java判斷http地址是否連通(示例代碼)

 下面代碼看下java判斷http地址是否連通

private boolean isOk(String url) {
        if(StrUtil.isEmpty(url)) return false;
        try {
            URL netUrl = new URL(url);
            HttpURLConnection connection = (HttpURLConnection) netUrl.openConnection();
            connection.setConnectTimeout(3000); //連接主機超時時間ms
            connection.setReadTimeout(3000); //從主機讀取數據超時時間ms
            if (HttpURLConnection.HTTP_OK == connection.getResponseCode()) {
                System.out.println("網絡聯通!");
                return true;
            }
        } catch (IOException e) {
            log.error("連接不通", e.getMessage());
            return false;
        }
        return false;
    }

補充:下面看下url.openconnection() 設置超時時間

System.setProperty("sun.net.client.defaultConnectTimeout", "30000");  

System.setProperty("sun.net.client.defaultReadTimeout", "30000");  

其中: sun.net.client.defaultConnectTimeout:連接主機的超時時間(單位:毫秒)  

sun.net.client.defaultReadTimeout:從主機讀取數據的超時時間(單位:毫秒)  

JDK 1.5以前的版本,隻能通過設置這兩個系統屬性來控制網絡超時。在1.5中,還可以使用HttpURLConnection的父類URLConnection的以下兩個方法:  

setConnectTimeout:設置連接主機超時(單位:毫秒)  

setReadTimeout:設置從主機讀取數據超時(單位:毫秒)  

例如:  

HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();  

urlCon.setConnectTimeout(30000);  

urlCon.setReadTimeout(30000);  

到此這篇關於java判斷http地址是否連通(示例代碼)的文章就介紹到這瞭,更多相關java判斷http地址內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: