中易网

hibernate annotation 怎么只更新被赋值字段

答案:2  悬赏:50  
解决时间 2021-03-09 15:23
hibernate annotation 怎么只更新被赋值字段
用hibernate的update会更新所有的字段 包括没有发生变化的字段
会把你不想改变的字段全部清空!怎么才可以只更新有赋值的字段?
好像说用dynamic-update属性 在哪里设置? 查了文档按那样设置好像不行

关键是要更新的字段是不确定的。 可以是除了主键外的任何一个。任何一个都可能是null值哦。 有个注解就是可以判断如果为null值就不会更新。但是我按文档那样加在类上面不管用,还是会全部更新。@org.hibernate.annotations.Entity(dynamicUpdate=true,dynamicInsert=true)

@Entity
@org.hibernate.annotations.Entity(dynamicUpdate=true,dynamicInsert=true)
@Table(name="patient")
public class Patient {
。。。。}
最佳答案
这与hibernate annotation 没有关系, 你的对象不是Load出来的,而是是new出来的,你只对需要的字段赋值了,其余字段没有值。hibernate会认为你现在需要把其余字段改成空,你只需要把对象创建的改成用hibernate Load出来, 然后更改你需要Update的 值,这样就能了。dynamic-update 是好像是对托管状态的 对象进行自动更新
全部回答
hibernate 的update方法本来就会全部从新赋值的,要么你加这个@column(updatable = false, length = 20) ,不过这个只能赋值一次,后面就不能该了。 不然就写hql吧。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求:《择天记第二季》 (全12集) 百度云 。
工行理财金卡和亚洲卡有何区别
word文档如何输入微摩尔
妈妈存入银行10000元,整存整取五年,年利率
绥中县司法局小庄子司法所地址在哪,我要去那
uv镜错丝了怎么办,镜片丝与镜头丝错位卡死,
转笔侠受到的伤害怎么算
补充题:如果把110块糖平均分给五(1)班的同
不足爲憑的意思是什么?不足爲憑的释义是什么
空集的符号怎么读
园林酒店A栋地址有知道的么?有点事想过去
我想签约,编辑可以M我。
新天地NO.1在哪里啊,我有事要去这个地方
70平米的loft房子房型小吗
请问哈飞民意车现在用10W/30的机油
推荐资讯
如果一个人说好不抽烟了,却还偷偷的抽烟 还
有种杯子倒入开水晃一晃就可以喝了叫什么杯
问个演员问题,大家觉得赵薇和孙俪谁的演技好
请问下公司股东变更是先要去弄那个ICP吗 ,请
86版西游记孙悟空飞天的背景音乐
天龙跆拳道馆地址有知道的么?有点事想过去
园丁园乐新村停车场我想知道这个在什么地方
好家庭在什么地方啊,我要过去处理事情
09款丰田霸道4000空调泵没火风扇不转
我汽车上装了一机油过滤壶,问题是过滤器下面
山西焦煤集团有多少个部门?
去上海夜总会做事好呢还是厦门
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?