Java如何判断一个url是否有效
Java如何判断一个url是否有效
Java判断一个url是否有效,代码如下所示:
import java.io.InputStream;
import java.net.URL;
public class URLTest {
public static boolean isUrlValid(String strLink) {
URL url;
try {
url = new URL(strLink);
HttpURLConnection connt = (HttpURLConnection)url.openConnection();
//也可以通过判断code码判断是否有效
//一般是返回200 但是不保证有些网站请求成功返回的不是200
int responseCode = connt .getResponseCode();
if(200 == responseCode){
//链接有效
}else{
//链接无效
}
connt.setRequestMethod("HEAD");
String strMessage = connt.getResponseMessage();
if (strMessage.compareTo("Not Found") == 0) {
return false;
}
connt.disconnect();
} catch (Exception e) {
return false;
}
return true;
}
}可以使用Java中的URL类来判断URL是否有效。URL类提供了一个openConnection()方法,可以打开一个连接并返回一个URLConnection对象,该对象可以用来检查连接是否有效。
以下是一个示例代码:
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
public class URLValidator {
public static void main(String[] args) {
String url = "https://www.google.com";
boolean isValid = isValidURL(url);
System.out.println("Is " + url + " valid? " + isValid);
}
public static boolean isValidURL(String url) {
try {
URLConnection conn = new URL(url).openConnection();
conn.connect();
return true;
} catch (IOException e) {
return false;
}
}
}该代码将尝试打开指定的URL并检查是否有效。如果URL有效,则openConnection()方法将成功打开连接并返回URLConnection对象。如果URL无效,则会抛出IOException并返回false。
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);
}
}到此这篇关于Java判断一个url是否有效的文章就介绍到这了,更多相关java url是否有效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot在启动类main方法中调用service层方法报“空指针异常“的解决办法
这篇文章主要介绍了SpringBoot在启动类main方法中调用service层方法报“空指针异常“的解决办法,大多数情况下,我们使用Springboot是创建一个maven项目,然后通过controller层的接口调用,但也有特殊情况,文章介绍的非常详细,需要的朋友可以参考下2024-06-06
Redis 集成Spring的示例代码(spring-data-redis)
本篇文章主要介绍了Redis 集成Spring的示例代码(spring-data-redis) ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-09-09
Spring中的@EnableScheduling定时任务注解
这篇文章主要介绍了Spring中的@EnableScheduling注解,@EnableScheduling是 Spring Framework 提供的一个注解,用于启用 Spring 的定时任务功能,通过使用这个注解,可以在 Spring 应用程序中创建定时任务,需要的朋友可以参考下2024-01-01


最新评论