在WEB 应用开发中,调用session的update(),然后提交事物,之后,数据库中的数据成功更新了,但查询数据库显示结果不稳定,一会儿显示更新之前的数据,一会儿显示更新之后的数据。
详细情况是这样的。在WEB页面中调用HIBERNATE DAO执行update来更新数据,然后用另外一个网页执行查询并显示查询结果。查询方法如下:
[code="java"]Query q = getSession().createQuery("from T order by idx");
List li=q.list();[/code]
一开始我用HIBERNATE自带的连接池,发先了查询结果不稳定现象,然后我换成C3P0,问题依旧。项目中我没有运用二级缓存,并且每次执行更新操作后都提交了事物commit()。
希望同仁们能帮我想想办法。在这里先谢谢大家!
把你页面上用来查询的代码贴出来看看。怀疑是页面缓存。你可以测试下,update之后,删除浏览器缓存,然后再查询,看结果有什么不同。