日期:2014-05-20  浏览次数:20557 次

Spring Hibernate 缓存处理的问题
目前使用Spring Hibernate开发一套WEB系统,需要从数据库中实时读取记录,但该数据的记录是由另外一个系统更新的。可能是使用了缓存的原因,数据库修改后,Hibernate读出的数据无法做到实时同步更新,由于系统其他部分都使用缓存,又不能单独去掉缓存读取,请问有没有什么办法在进行某步操作的时候直接实时读取数据库

------解决方案--------------------
最好是用缓存依赖,当数据库改变时,同时更新缓冲

按楼主的做法也可以,当你执行某部操作时,将需要操作的Session里的对象清空就是了
------解决方案--------------------
最好是用缓存依赖,当数据库改变时,同时更新缓冲 

按楼主的做法也可以,当你执行某部操作时,将需要操作的Session里的对象的缓冲清空就是了
Session.evict(你需要的对象);
------解决方案--------------------
因为你不是都用hibernate实现的-》 “因为还有另外一个程序操作该数据库” 所以造成缓存与数据库不同步
------解决方案--------------------
session.refresh()