我使用struts2作为前端,使用hibernate 3.0作为ORM。我想根据所选的下拉列表更新客户地址。除PIN 之外,所有字段均为必填字段。如果用户正在更新地址并将 PIN 保留为空白,则 PIN 也会随着状态等进行更新。 如果 PIN 为空,我不想更新它。如何实现这一点,Hibernate 是否有任何更新特定列的东西,如下所示。
if(getPin()==null||getPin()=="")
{
@update(false) //make update false
}
检查片段以了解我的问题。
最佳答案
你唯一要做的就是
1) 加载客户 2)将所有更改的字段复制到仍然托管的对象中,除了 pin 为空时
简单地将分离的实体与空字段合并是不够的,因为 hibernate 无法判断您是否要删除它。
考虑使用像 Dozer 这样的框架。
关于java - 使用 Hibernate 仅更新特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13873589/