最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

數(shù)據(jù)庫連接超時java處理的兩種方式

 更新時間:2023年04月12日 10:52:40   作者:拄杖盲學輕聲碼  
這篇文章主要介紹了數(shù)據(jù)庫連接超時java處理的兩種方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

數(shù)據(jù)庫連接超時java處理的方式

在測試一套數(shù)據(jù)庫是否能夠連接上的過程中,我們就會遇到這樣的一種情況,當不能連接的時候會存在代碼運行時間超級長的問題,這樣的話在頁面上會存在卡死的現(xiàn)象,為了解決這個問題

總結了下面兩種方式:

1.使用socket的方式設置連接超時(通用)

這個主要是通過使用socket.connect()方法建立連接,其連接主要需要用到ip和相關端口號(記得是int類型喲)

具體使用方法如下:

Socket socket = new Socket();
try
{
? ?socket.connect(new InetSocketAddress(ip, portt), 3000);
? ?socket.setSoTimeout(3000);
? ?socket.getInputStream().read();
} catch (SocketTimeoutException e)
{
? ?if (!socket.isClosed() && socket.isConnected()){
? ??? ?System.out.println("讀取超時");
? ?}else{
? ??? ? System.out.println("連接超時");
? ??? ? return null;
? ?}
}
catch (Exception e)
{
? ?e.printStackTrace();
}

2.使用DriverManager.setLoginTimeout()方法來設置超時

這種情況下通常是通過DriverManager.getConnection()方式來建立連接的.

具體實現(xiàn)代碼如下:

Class.forName("oracle.jdbc.driver.OracleDriver");//操作數(shù)據(jù)庫第一步:找到驅(qū)動
DriverManager.setLoginTimeout(3)//表示3秒;
Connection con = DriverManager.getConnection(url,user,passwd);//第二步:建立連接 ? ? ? ?
Statement st = con.createStatement();//第三步:建立一個statement的對象

上面也順便把如何測試數(shù)據(jù)庫連接的方法也拋出來了。

java的遠程數(shù)據(jù)庫連接,超時問題

最近開發(fā)短信發(fā)送模塊,一直困擾我的一個問題.就是定期獲得短信發(fā)送狀態(tài),看短信有沒有發(fā)出去,啟動一個線程,但是沒有過多久就死了,出現(xiàn)socke的write錯誤,通過future對超時控制也不行,過段時間久線程就死了,后來更改遠程數(shù)據(jù)庫的設置。

port = 3369?
socket = /tmp/mysql.sock?
skip-locking?
max_allowed_packet = 2M?
sort_buffer_size = 512K?
net_buffer_length = 8K?
read_buffer_size = 256K?
read_rnd_buffer_size = 512K?
myisam_sort_buffer_size =16M?
wait_timeout=1400?
interactive_timeout=1400?

增加wait_timeout和interactive_timeout參數(shù),還是出現(xiàn)一樣的問題,時間過了一個月后,在一個偶然的機會是因為socket沒有設置超時造成的所以更改連接語句增加

jdbc:mysql://ip/true&characterEncoding=gbk&connectTimeout=120000&socketTimeout=120000

設置socket的超時為2分鐘,測試通過.運行穩(wěn)定.

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Spring ProtocolResolver策略接口示例

    Spring ProtocolResolver策略接口示例

    這篇文章主要介紹了Spring ProtocolResolver策略接口示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • 淺談Zookeeper開源客戶端框架Curator

    淺談Zookeeper開源客戶端框架Curator

    這篇文章主要介紹了淺談Zookeeper開源客戶端框架Curator的相關內(nèi)容,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • 一文詳解前端和后端的數(shù)據(jù)是如何連接的(基于Spring?Boot、Django或Node.js)

    一文詳解前端和后端的數(shù)據(jù)是如何連接的(基于Spring?Boot、Django或Node.js)

    這篇文章主要介紹了前端和后端的數(shù)據(jù)是如何連接的相關資料,文中通過示例介紹的非常詳細,舉例講解的是基于Spring?Boot、Django或Node.js,需要的朋友可以參考下
    2025-01-01
  • SpringBoot下使用自定義監(jiān)聽事件的流程分析

    SpringBoot下使用自定義監(jiān)聽事件的流程分析

    事件機制是Spring的一個功能,目前我們使用了SpringBoot框架,所以記錄下事件機制在SpringBoot框架下的使用,同時實現(xiàn)異步處理,這篇文章主要介紹了SpringBoot下使用自定義監(jiān)聽事件,需要的朋友可以參考下
    2023-08-08
  • Eclipse?IDE中如何設置JVM啟動參數(shù)

    Eclipse?IDE中如何設置JVM啟動參數(shù)

    這篇文章主要介紹了Eclipse?IDE中如何設置JVM啟動參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • java導出csv方法實現(xiàn)講解

    java導出csv方法實現(xiàn)講解

    這篇文章主要介紹了java導出csv的方法,客戶要求在項目中有導出CSV文件的功能,并且給出了如何在不知道如何在不知道對象類型(沒有應用泛型)的List中如何得到對象的屬性值,下面就詳細說下這個功能是如何實現(xiàn)的
    2013-12-12
  • Java生成及校驗token的實踐

    Java生成及校驗token的實踐

    Token 的生成和校驗機制為應用程序提供了一種安全的身份驗證和授權方式,可以用于用戶認證、API 訪問控制等場景,本文主要介紹了Java生成及校驗token的實踐,具有一定的參考價值,感興趣的可以了解一下
    2024-04-04
  • java新人基礎入門之遞歸調(diào)用

    java新人基礎入門之遞歸調(diào)用

    這篇文章主要給大家介紹了關于java新人基礎入門之遞歸調(diào)用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • mybatis不加@Parm注解報錯的解決方案

    mybatis不加@Parm注解報錯的解決方案

    這篇文章主要介紹了mybatis不加@Parm注解報錯的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • idea右鍵沒有java class選項問題解決方案

    idea右鍵沒有java class選項問題解決方案

    這篇文章主要介紹了idea右鍵沒有java class選項問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04

最新評論

玉屏| 青岛市| 巫山县| 衡南县| 枞阳县| 通城县| 赫章县| 尚义县| 克拉玛依市| 若尔盖县| 东乡族自治县| 于都县| 光泽县| 天门市| 利津县| 东阳市| 新晃| 潼南县| 左云县| 营山县| 沭阳县| 腾冲县| 临清市| 同德县| 浦县| 康保县| 济阳县| 太原市| 上饶县| 宜兰县| 奉新县| 伽师县| 故城县| 榆树市| 肇州县| 长岛县| 略阳县| 原平市| 玉田县| 繁峙县| 巴彦淖尔市|