java怎么获取访问网页域名

Java中获取访问网页域名的几种方法

在Java编程中,我们经常需要获取访问网页的域名信息,这对于网站统计、用户追踪等功能尤为重要,以下是一些在Java中获取访问网页域名的常用方法。

使用

HttpURLConnectionHttpURLConnection

是Java提供的一个类,用于打开和发送HTTP请求,我们可以通过解析返回的

Content-Type

头部信息来获取域名。

头部信息来获取域名。

import java.net.HttpURLConnection;import java.net.URL;public class DomainFetcher {    public static String getDomain(String urlString) {        try {            URL url = new URL(urlString);            HttpURLConnection connection = (HttpURLConnection) url.openConnection();            connection.setRequestMethod("GET");            connection.connect();            String contentType = connection.getContentType();            if (contentType != null && contentType.contains("text/html")) {                int lastSlashIndex = urlString.lastIndexOf('/');                return urlString.substring(0, lastSlashIndex);            }        } catch (Exception e) {            e.printStackTrace();        }        return null;    }    public static void main(String[] args) {        String domain = getDomain("http://www.example.com/page");        System.out.println("Domain: " + domain);    }}

使用正则表达式

通过正则表达式匹配URL中的域名部分也是一种简单的方法。

import java.util.regex.Matcher;import java.util.regex.Pattern;public class DomainFetcher {    public static String getDomain(String urlString) {        Pattern pattern = Pattern.compile("(?i)http(s)?://(\\S+)");        Matcher matcher = pattern.matcher(urlString);        if (matcher.find()) {            return matcher.group(3);        }        return null;    }    public static void main(String[] args) {        String domain = getDomain("http://www.example.com/page");        System.out.println("Domain: " + domain);    }}

使用

URL

URL

类本身提供了获取域名的方法,即

getHost()

方法。

方法。

import java.net.URL;public class DomainFetcher {    public static String getDomain(String urlString) {        try {            URL url = new URL(urlString);            return url.getHost();        } catch (Exception e) {            e.printStackTrace();        }        return null;    }    public static void main(String[] args) {        String domain = getDomain("http://www.example.com/page");        System.out.println("Domain: " + domain);    }}

三种方法都可以有效地获取访问网页的域名,在实际应用中,可以根据具体需求和场景选择合适的方法,需要注意的是,以上代码示例仅供学习和参考,实际使用时可能需要根据具体情况进行调整。

The End

发布于:2025-11-12,除非注明,否则均为域名通 - 全球域名资讯一站式平台原创文章,转载请注明出处。