首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

用hibernate作更新时,每次总是要先查询出要更新的对象,然后一一setXX值进去才update,可以直接用update(PO)来更新吗?该怎么解决

2012-03-05 
用hibernate作更新时,每次总是要先查询出要更新的对象,然后一一setXX值进去才update,可以直接用update(PO)

用hibernate作更新时,每次总是要先查询出要更新的对象,然后一一setXX值进去才update,可以直接用update(PO)来更新吗?
我试过了,是可以,但是问题也随之而来.就是明明PO里有些值是为null的,它也会把所有字段都更新,不会动态只更新不为null的字段,尽管我已经设置dynamic-update= "true ".有什么办法可以让这种方法也支持动态更新吗?因为我的表的字段太多了,在取得更新后的值时已经在Action里setXX一遍了,传入DAO中又要重复一次,实在是郁闷啊.

[解决办法]
你在Action里先查出这个对象,然后set要改的值进去,再直接保存,即在DAO里直接update你传入的这个对象,就可以了.

热点排行