我的hibernate配置如下
<property name="connection.url">jdbc:mysql://192.168.10.195:3306/radius?useUnicode=true&amp;characterEncoding=UTF-8</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.username">root</property>
<property name="connection.password">123456</property>
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="show_sql">true</property>mysql的JDBC驱动是5.1.13连接后直接查询数据没有问题,但是如果我有另一个程序(第三方的程序)修改了数据库中的数据后,则无法刷新变更后的内容了。只有重新启动TOMCAT后才可以刷新出新的内容。请问如何解决?

解决方案 »

  1.   

    这应该是事务没有提交的问题!你在action中做了操作,更新了数据,如果事务没有提交,数据库的内容是没有改变的!
      

  2.   


    兄弟,关闭缓存吧。hib的缓存很蠢的,是感觉不到第3方程序导致的数据库变化的。
      

  3.   

       我今天也遇见过这种事,我觉得确实是hibernate的连接池问题,我添加数据,结果hibernate的sql的打印出来了,但数据没取到,跟添加前一样,后来我改成tomcat的连接池就出现了我想要的结果
      

  4.   

    各位,回答的都不对。自己解决了。主要是数据库隔离级别与hibernate的配合。
    实在不清楚为什么没有人来回答。(网上有很多与我类似的问题)