日期:2014-05-17  浏览次数:20749 次

S2SH的WEB项目放在服务器里,每次登陆时不时会出现struts错误
如题,每次到登陆页面点击登陆之后会出现struts报错,但是刷新之后又能正常登陆,出现的频率比较高,不知道是数据库问题还是项目的jar包冲突,求解

错误提示在二楼

------解决方案--------------------
数据库连接超时,mysql的重连autoReconnect参数不能使连接重连
需要在给jdbc url 增加 autoReconnect=true 
------解决方案--------------------
解决方案:  
1.  
给jdbc url 增加 autoReconnect=true 一定能解决你的问题,可以定期观察一下 show processlist  
改进方法如下:  
<property name="url" value="jdbc:mysql://localhost/数据库实例名   
称?&useUnicode=true&characterEncoding=utf-8&autoReconnect=true"/>  
   
2.  
寻找支持重连的连接池。  
           注意:c3p0连接池支持重连;重连参数是:  
               idleConnectionTestPeriod   设置空闲连接测试周期  
               preferredTestQuery : 设置一查询语句,用于重连测试  
              testConnectionOnCheckin设置为true  
              testConnectionOnCheckout设置为true  
   
在sessionFactory里配置:  
<property name="hibernateProperties">  
   <props>  
        <prop key="hibernate.autoReconnect">true</prop>   
  </props>  
</property>