java con的連接超時(shí)如何設(shè)置

小樊
81
2024-09-21 07:07:43

在Java中,使用java.net.Connection對(duì)象設(shè)置連接超時(shí),可以通過(guò)調(diào)用setConnectTimeout()方法來(lái)實(shí)現(xiàn)。這個(gè)方法接受一個(gè)以毫秒為單位的整數(shù)參數(shù),表示連接超時(shí)時(shí)間。

以下是一個(gè)簡(jiǎn)單的示例:

import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;

public class ConnectionTimeoutExample {
    public static void main(String[] args) {
        String targetHost = "example.com";
        int port = 80;
        int connectTimeout = 5000; // 設(shè)置連接超時(shí)為5秒

        try (Socket socket = new Socket()) {
            socket.connect(new InetSocketAddress(targetHost, port), connectTimeout);
            System.out.println("連接成功");
        } catch (UnknownHostException e) {
            System.err.println("找不到目標(biāo)主機(jī): " + targetHost);
        } catch (IOException e) {
            System.out.println("連接超時(shí)");
        }
    }
}

在這個(gè)示例中,我們嘗試連接到example.com的80端口,并設(shè)置連接超時(shí)為5秒。如果連接在5秒內(nèi)未完成,將拋出IOException異常,并打印“連接超時(shí)”。

0