码迷,mamicode.com
首页 > 编程语言 > 详细

java 判断RUL访问是否有效返回状态

时间:2014-05-28 01:25:46      阅读:311      评论:0      收藏:0      [点我收藏+]

标签:style   c   class   blog   code   java   

bubuko.com,布布扣
package com.ddln.test;

import java.net.HttpURLConnection;
import java.net.URL;

public class URLConnect {

    private static URL url;  
    private static HttpURLConnection con;  
    private static int state = -1;  
      
    /** 
   * 功能:检测当前URL是否可连接或是否有效, 
   * 描述:链接url地址,链接失败则返回null 
   * @param urlStr 指定URL网络地址 
   * @return URL 
   */  
    public synchronized static String isConnect(String urlStr) {  

       if (urlStr == null || urlStr.length() <= 0) {                         
           return null;                   
       }  
       
       try {  
            url = new URL(urlStr);  
            con = (HttpURLConnection) url.openConnection();  
            state = con.getResponseCode();  
//            System.out.println("状态= "+state);  
            if (state == 200) {  
//                System.out.println("URL可用!");  
            }  
        }catch (Exception ex) {  
         urlStr = null;  
       }
       //释放资源
       con.disconnect();  
       return urlStr;  
    }
    

    public static void main(String[] args) {
        
        int state=0;
        
        String strURL[] = {"http://www.hao360.com","http://www.baidu.com","http://www.hao360dfdffdq.com","http://www.hao360dddd3123f.com","http://www.hao360.com"};
        int errorURL[] =new int[strURL.length];
        
        //访问所有的url地址
        for(int i=0; i<strURL.length; i++){
            
            String url = URLConnect.isConnect(strURL[i]);
//            System.out.println("url的状态="+url);
            //如果访问失败就记录下来
            if(url==null){
                System.out.println("第"+(i+1)+"个"+strURL[i]+"url地址不可以访问");
                errorURL[state]=i;
                state++;
            }
            else{                
                System.out.println("第"+(i+1)+"个"+strURL[i]+"url地址可以访问");
            }
        }
        
        for(int i=0; i<errorURL.length; i++){
            if(errorURL[i]==0){
                break;
            }
            System.out.println(errorURL[i]);
            System.out.println(strURL[errorURL[i]]);
            
        }
        
        //第二次访问
        state=0;
        for(int i=0; i<errorURL.length; i++){
            //如果errorURL[i]==0 后面没有可以的网址 退出循环
            if(errorURL[i]==0){
                break;
            }
            //继续访问
            String url = URLConnect.isConnect(strURL[errorURL[i]]);

            //如果访问失败就记录下来            
            if(url==null){
                System.out.println("第"+(i+1)+"个"+strURL[errorURL[i]]+"url地址不可以访问");
                System.out.println("输出="+strURL[errorURL[i]]);
                
                errorURL[state] = errorURL[i];
                System.out.println(errorURL[state]);
                state++;                
            }
            else{
                System.out.println("第"+(i+1)+"个"+strURL[errorURL[i]]+"url地址可以访问");
            }
        }
        
        for(int i=0; i<errorURL.length; i++){
        if(errorURL[i]==0){
            break;
        }
        System.out.println("最后:"+errorURL[i]);
        }
        
        
        //第三次访问
        state=0;
        for(int i=0; i<errorURL.length; i++){
            //如果errorURL[i]==0 后面没有可以的网址 退出循环
            if(errorURL[i]==0){
                break;
            }
            //继续访问
            String url = URLConnect.isConnect(strURL[errorURL[i]]);

            //如果访问失败就记录下来            
            if(url==null){
                System.out.println("第"+(i+1)+"个"+strURL[errorURL[i]]+"url地址不可以访问");
                System.out.println("输出="+strURL[errorURL[i]]);
                
                errorURL[state] = errorURL[i];
                System.out.println(errorURL[state]);
                state++;                
            }
            else{
                System.out.println("第"+(i+1)+"个"+strURL[errorURL[i]]+"url地址可以访问");
            }
        }
        
        //睡眠10秒
        try {
            Thread.sleep(10000);
            System.out.println("ssss");
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        System.out.println("睡眠后的访问");
        state=0;
        for(int i=0; i<errorURL.length; i++){
            //如果errorURL[i]==0 后面没有可以的网址 退出循环
            if(errorURL[i]==0){
                break;
            }
            //继续访问
            String url = URLConnect.isConnect(strURL[errorURL[i]]);

            //如果访问失败就记录下来            
            if(url==null){
                System.out.println("第"+(i+1)+"个"+strURL[errorURL[i]]+"url地址不可以访问");
                System.out.println("输出="+strURL[errorURL[i]]);
                
                errorURL[state] = errorURL[i];
                System.out.println(errorURL[state]);
                state++;                
            }
            else{
                System.out.println("第"+(i+1)+"个"+strURL[errorURL[i]]+"url地址可以访问");
            }
        }
    }


}
bubuko.com,布布扣

 

超好用!  0.0

java 判断RUL访问是否有效返回状态,布布扣,bubuko.com

java 判断RUL访问是否有效返回状态

标签:style   c   class   blog   code   java   

原文地址:http://www.cnblogs.com/hraceo/p/3753735.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!