java项目运行过程中使用数据库管理工具直接修改数据库表的某个字段,查询没有显示修改的内容,需重启

项目中使用的hibernate,数据库是sql server2008,直接使用管理工具执行sql语句修改字段,但是在浏览器中查询,没有显示修改的内容,重启应用之后,再查询,就正常了。是hibernate的缓存,还是java应用加载数据库导致的,求解释,有没有解决办法,可以立刻显示修改内容?
我也知道是hibernate的缓存,二级缓存或者查询缓存,但是项目中使用了hibernate和mybatis,而我的修改没有通过hibernate,而是使用mybatis的sql语句调用存储过程来实现的,绕过了hibernate,于是我有使用了mybatis的sql语句查询 到最新的结果,发送到相应页面就解决问题,没办法,大家说的都对,先到先得,谢谢了

刷新下不行么?数据库难道不是实时修改的?hibernate也是实时修改的。有可能是sql server的机制。我用hibernate连接MySql和oracle都没问题,实时更新数据的。追问

正在测试中...

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-02-12
看这个结果,感觉就是读到缓存的数据了,你把要查询的数据的二级缓存去了,或者是代码里面手动清除缓存。
第2个回答  2014-02-12
浏览器缓存问题,没有刷新
相似回答