org.springframework.dao.DataAccessResourceFailureException Io 異常: tConnection reset


  1、DHCP連接池:當Server釋放連接,瀏覽器無法檢測到,當再次訪問時,連接不會重新生成

       配置文件

datasource.validationQuery=select 1 from dual
datasource.testOnBorrow=true
datasource.testWhileIdle=true


//當連接釋放時,重新獲取連接
<property name="validationQuery" value="${datasource.validationQuery}"/>   
  <property name="testOnBorrow" value="${datasource.testOnBorrow}"></property>
        <property name="testWhileIdle" value="${datasource.testWhileIdle}"></property>

 

    MySQL的默認wait-timeout是8小時,8小時后自動關閉閑置鏈接

    使用Hibernate: 
    <property name="connection.autoReconnect">true</property>  
    <property name="connection.autoReconnectForPools">true</property> 
    <property name="connection.is-connection-validation-required">true</property> 
 
    提示SAX解析失敗:
    <prop key="connection.autoReconnect">true</prop>
     <prop key="connection.autoReconnectForPools">true</prop> 
     <prop key="connection.is-connection-validation-required">true</prop> 
 
     未使用hibernate等持久化管理框架,可在mysql的url中加入autoReconnect=true
     autoReconnect:      當數據庫連接異常中斷時,是否自動重新連接
     failOverReadOnly:   自動重連成功后,連接是否設置為只讀?

    對應中文環境,通常mysql連接URL可以設置為:

    jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=gbk&autoReconnect=true&failOverReadOnly=false

    在xml配置文件中,url中的&符號需要轉義成&。比如在tomcat的server.xml中配置數據庫連接池時,mysql jdbc url樣例如下:

    jdbc:mysql://localhost:3306/test?user=root&amp;password=&amp;useUnicode=true&amp;characterEncoding=gbk

    &amp;autoReconnect=true&amp;failOverReadOnly=false


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM