java 判断一个url是否可以访问的方法

有些时候,我们需要判断某个url是否可以访问,可以访问了,才允许继续进行,目前有两种方式,最后使用带超时时间的,
因为第一种超时时间不定,可能会出现阻塞的情况。

package com.url;
 
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
 
public class TestUrl {
 
    public static void main(String[] args) {
 
        testUrl("http://1.3.3.3/test");
        //最好使用下面这个,上面那个超时时间不定,所以可能会导致卡住的情况
        testUrlWithTimeOut("http://1.3.3.3", 2000);
    }
    
    public static void testUrl(String urlString){
        
        long lo = System.currentTimeMillis();
        URL url;  
        try {  
             url = new URL(urlString);  
             InputStream in = url.openStream();  
             System.out.println("连接可用");  
        } catch (Exception e1) {  
             System.out.println("连接打不开!");  
             url = null;  
        }  
        
        System.out.println(System.currentTimeMillis()-lo);
    }
    
    public static void testUrlWithTimeOut(String urlString,int timeOutMillSeconds){
        long lo = System.currentTimeMillis();
        URL url;  
        try {  
             url = new URL(urlString);  
             URLConnection co =  url.openConnection();
             co.setConnectTimeout(timeOutMillSeconds);
             co.connect();
             System.out.println("连接可用");  
        } catch (Exception e1) {  
             System.out.println("连接打不开!");  
             url = null;  
        }  
        System.out.println(System.currentTimeMillis()-lo);
    }
}

内容转自:https://blog.csdn.net/baidu_18607183/article/details/53670598

猜你喜欢

转载自blog.csdn.net/huangbaokang/article/details/90768944