1. 程式人生 > >【原創】如何解決java.net.SocketException 異常問題

【原創】如何解決java.net.SocketException 異常問題

今天在論壇上看到這問題的帖子,感覺這個問題值得總結一下

希望對自己和大家有所幫助

我在插入新聞的時候,伺服器出現如下錯誤
** BEGIN NESTED EXCEPTION **

java.net.SocketException
MESSAGE: Connection reset by peer: socket write error

STACKTRACE:

java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2739)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2650)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1581)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1695)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3026)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1137)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1368)
        .......
這個問題怎麼解決呀,請各位高手幫幫忙啊.....

我的回答:

Connection reset by peer: socket write error
這個跟資料庫沒有關係,當客戶端發出請求(request)後,如果還沒有完全獲得服務端的響應(response),
客戶端與伺服器段的連線斷開(例如斷網、按了“停止”按鈕、或者客戶端瀏覽器關閉等),伺服器端就會丟擲此Exception。

引用 3 樓 yuanhong1985 的回覆:
如果重啟tomcat的話就不會出現這種問題,但是過不了多久又會出現這種問題,該怎麼解決呀?


你說你上面的情況

你檢查一下:
Tomcat 安裝目錄下的conf/server.xml檔案下的

  <Connector
              port="8080"
              maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
              enableLookups="false" redirectPort="8443" acceptCount="100"
              debug="0" connectionTimeout="20000"


              disableUploadTimeout="true" />

你檢查一下是不是資料庫連線超時

對,就是這個問題,謝謝啦....(最後就是這個問題,很高興,希望對大家有所幫助)