设为首页 加入收藏

TOP

Hibernate 不能实时获取数据库中更新的记录问题解决
2014-11-23 21:26:39 来源: 作者: 【 】 浏览:6
Tags:Hibernate 不能 实时 获取 数据库 更新 记录 问题 解决

项目用到hibernate进行与mysql数据库的连接和操作,有一个“查询”模块和“添加”模块,是用不同的hibernate配置文件来做的。在做完添加后做查询时发现了问题,查询的结果总是添加之前的,而最新更新的记录却没有被查询得到。只有重启tomcat服务器才能查到更新的记录。


google之。


按其中所说,查询前用session.clear();清除一级缓存,重新尝试添加+查询,还是查不到更新记录。用setCacheMode(CacheMode.IGNORE)清二级缓存,实验,失败。两个都进行清除,依然失败。


虽然说得并不是很明白,但是找到了问题所在:hibernate默认连接池的问题,使用c3p0连接池就可以了。于是按此方法以下述步骤解决问题:


首先添加需要的jar包:hibernate-c3p0-4.2.0.final.jar,c3p0-0.9.2.1.jar,mchange-commons-java-0.2.7.jar,可以分布去http://mvnrepository.com/http://www.java2s.com/下载,注意mchange-commons-java的版本不要过低,否则会ClassNotFound错。


修改hibernate配置文件,用c3p0连接池连接数据库,在之前的配置以外加入如下配置:


解决问题。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Hibernate不能实时获取MySQL中更新 下一篇jQuery 网页局部打印总结

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: