Hibernate更新删除数据后,再查询数据依然存在的解决办法
删除数据后,重新查询了数据库,DB中记录已经删除了,但是数据依然能查询到,网上都说是Hibernate的缓冲问题。
我对session进行了clear,flush,并且在事务和查询中都对session进行了关闭操作。
但问题总是解决不了。
后来看来这个帖子:http://stackoverflow.com/questions/12035517/hibernate-reading-function-shows-old-data
在Hibernate的配置文件添加了配置
<property name="hibernate.connection.isolation">2</property>
问题解决
2015.5.13增加:
还发现做了上述的修改之后,有时候在更新数据库后,查询依然能查到旧数据。
网上查了依然是缓存问题。
后来将Hibernate自建的DAO类中的类似findById这些查询方法中都加了HibernateSessionFactory.closeSession()之后问题解决。