我是靠谱客的博主 无语鸡翅,最近开发中收集的这篇文章主要介绍java判断是否是url_用JAVA判断一个URL是否有效,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近因项目需求,需要针对一些URL地址进行检测是否可用,使用java.net 下的类来实现,主要用到了 URL和HttpURLConnection 二个类 ,URL 是统一资源标识符的引用,一个URL实例代表着一个url的引用,开始使用了URL中的的openStream()方法,这样使用倒是可以,但是速度慢,代码如下:

try {

url = new URL("http://127.0.0.1/sj/user/getUser");

in = url.openStream();

} catch (Exception e1) {

System.out.println("连接打不开!");

url = null;

}

下面判断url是不是null就可以了,速度慢

最后使用了HttpURLConnection 中的 getResponseCode();方法,HttpURLConnection : 通常一个HttpURLConnection 的实例可以生成一个请求,它有个方法 getResponseCode();可以得到请求的响应状态,该方法返回一个 int 分别是 200 and 404 如无法从响应中识别任何代码则返回 -1,代码如下:

/**

* 文件名称为:URLAvailability.java

* 文件功能简述: 描述一个URL地址是否有效

* @author Jason

* @time 2010-9-14

*

*/

public class URLAvailability {

private static URL url;

private static HttpURLConnection con;

private static int state = -1;

/**

* 功能:检测当前URL是否可连接或是否有效,

* 描述:最多连接网络 5 次, 如果 5 次都不成功,视为该地址不可用

* @param urlStr 指定URL网络地址

* @return URL

*/

public synchronized URL isConnect(String urlStr) {

int counts = 0;

if (urlStr == null || urlStr.length() <= 0) {

return null;

}

while (counts < 5) {

try {

url = new URL(urlStr);

con = (HttpURLConnection) url.openConnection();

state = con.getResponseCode();

System.out.println(counts +"= "+state);

if (state == 200) {

System.out.println("URL可用!");

}

break;

}catch (Exception ex) {

counts++;

System.out.println("URL不可用,连接第 "+counts+" 次");

urlStr = null;

continue;

}

}

return url;

}

}

超级OK

最后

以上就是无语鸡翅为你收集整理的java判断是否是url_用JAVA判断一个URL是否有效的全部内容,希望文章能够帮你解决java判断是否是url_用JAVA判断一个URL是否有效所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部