Hibernate 不能实时获取数据库中更新的记录问题解决
2016-10-27 21:55
417 查看
项目用到hibernate进行与mysql数据库的连接和操作,有一个“查询”模块和“添加”模块,是用不同的hibernate配置文件来做的。在做完添加后做查询时发现了问题,查询的结果总是添加之前的,而最新更新的记录却没有被查询得到。只有重启tomcat服务器才能查到更新的记录。
google之。
网上提到了hibernate的缓存机制,http://www.linuxidc.com/Linux/2014-09/106458.htm
按其中所说,查询前用session.clear();清除一级缓存,重新尝试添加+查询,还是查不到更新记录。用setCacheMode(CacheMode.IGNORE)清二级缓存,实验,失败。两个都进行清除,依然失败。
正迷茫时,找到了这里:http://www.linuxidc.com/Linux/2014-09/106459.htm
虽然说得并不是很明白,但是找到了问题所在: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整体理解 http://www.linuxidc.com/Linux/2014-07/104405.htm
Hibernate工作机制及其常用类和方法 http://www.linuxidc.com/Linux/2011-12/50419.htm
Hibernate 的详细介绍:请点这里
Hibernate 的下载地址:请点这里
原文地址:http://www.linuxidc.com/Linux/2014-09/106460.htm
需要的jar包下载地址:http://download.csdn.net/detail/pengyufight/9666160
google之。
网上提到了hibernate的缓存机制,http://www.linuxidc.com/Linux/2014-09/106458.htm
按其中所说,查询前用session.clear();清除一级缓存,重新尝试添加+查询,还是查不到更新记录。用setCacheMode(CacheMode.IGNORE)清二级缓存,实验,失败。两个都进行清除,依然失败。
正迷茫时,找到了这里:http://www.linuxidc.com/Linux/2014-09/106459.htm
虽然说得并不是很明白,但是找到了问题所在: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整体理解 http://www.linuxidc.com/Linux/2014-07/104405.htm
Hibernate工作机制及其常用类和方法 http://www.linuxidc.com/Linux/2011-12/50419.htm
Hibernate 的详细介绍:请点这里
Hibernate 的下载地址:请点这里
原文地址:http://www.linuxidc.com/Linux/2014-09/106460.htm
需要的jar包下载地址:http://download.csdn.net/detail/pengyufight/9666160
相关文章推荐
- hibernate 不能实时获取数据库中更新的记录问题解决
- Spring、Hibernate 数据不能插入到数据库问题解决
- 解决ASP不能更新,数据库或对象为只读的问题
- 解决getHibernateTemplate().save ()不能将数据保存到数据库的问题
- 【原】解决Flash缓存问题(即修改后不能实时更新的问题)
- Hibernate的方法获取对象后,对象调用set后会自动更新数据库内容的解决办法
- 解决angular2 获取到的数据无法实时更新的问题
- 解决hibernate产生的id序列或者setXX不能同步到数据库到问题(this.hibernateTemplate.flush();hibernateTemplate.getSessionFactory().getCurrentSession().connection().commit())
- Windows XP+IIS 不能更新。数据库或对象为只读问题解决~~
- Hibernate不能实时获取MySQL数据库的更新
- 解决Hibernate不能自动创建数据库表的问题
- 解决singleton Bean依赖prototype Bean不能实时更新的问题
- 解决getHibernateTemplate().save ()不能将数据保存到数据库的问题
- Spring、Hibernate 数据不能插入到数据库问题解决
- 如何解决程序中新插入ACCESS数据库表的记录无法及时在数据库中更新的问题。
- angular2 获取到的数据无法实时更新问题的解决
- Hibernate不能实时获取MySQL数据库的更新
- hibernate的dao操作不能提交到数据库问题的解决
- 玩转SSH--Hibernate(三)---手动修改数据库,前台查询信息不同步更新问题解决方法