Hibernate使用自己设定的应用层缓存时,一些优化操作

自己实现的应用层缓存,效率高,但提交更新时,都要把全部数据更新到数据库,很耗资源。改良如下:

1、充分使用Hibernate的脏数据检查功能,这样只会更新被修改了的数据字段,大大减少提交到数据库的流量。在数据修改之前,从自己设计的缓存中PO重新关联到session里,把PO从脱管状转换为持久状,这样才能使用Hibernate的脏数据功能。语句为:session.lock(Object,LockMode.NONE)

2、如果使用自己定义的数据类型(UserType),则要注意equals()方法,因为如果判断错误,则没有改变的数据依然会提交,或改变了的数据不提交

3、如果使用session.merge(Object)和UserType,则要必须写UserType.replace()方法,return正常的字段值,否则该字段没有数据。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章