hibernate将NULL值更新到DB中的问题 |
您所在的位置:网站首页 › 数据库字段更新方法有哪些 › hibernate将NULL值更新到DB中的问题 |
问题背景:在某个表中增加了一个新字段,字段可为空。在insert数据后,之后update这条数据时,新增的这个字段并没有赋值,即new对象时这个字段是null,然后hibernate就将null更新到DB中去了,本项目使用的是Oracle。 分析:默认情况下,使用hibernateTemplate的更新,会将对象全量更新,就会把null值更新到DB中,如果原来字段是有值的,这下好了,执行一次对象的更新就会丢失数据。 解决方案: 方案1:在hibernate的实体映射文件的class上配置,dynamic-update="true" 方案2:如果是只针对某个字段,可在hibernate的实体映射文件中某个字段的property上配置,update="false" 方案3:自己写HQL语句进行更新操作,但是要确保别人在操作这个对象时不要使用hibernateTemplate的更新,但是你怎么控制的了别人。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |