Java代码实现:精准获取URL连接中的主域名(附示例及优化思路)
在Java中,获取URL连接中的主域名可以通过解析URL并提取主机名部分来实现。以下是一个简单的示例: ```java import java.net.URL; public class Main { public static void main(String[] args) throws Exception { String urlStr = "https://www.example.com/path/to/resource"; URL url = new URL(urlStr); String host = url.getHost(); // 去掉端口号(如果有的话) int portIndex = host.indexOf(":"); if (portIndex > -1) { host = host.substring(0, portIndex); } // 获取主域名,即去掉www或者任何子域名后的部分 String domain = host; int dotIndex = host.lastIndexOf("."); while (dotIndex > 0 && dotIndex < host.length() - 1) { domain = host.substring(dotIndex + 1); dotIndex = host.lastIndexOf(".", dotIndex - 1); } System.out.println("主域名: " + domain); } } ``` 这个示例首先获取了URL的主机名,然后剥离了可能存在的端口号,并进一步处理以提取主域名(即最后一级非"."的部分)。注意,这个示例假设主域名是最后一级非"."的部分,但在实际应用中,根据具体需求和URL的结构,可能需要更复杂的逻辑来准确地确定主域名。 对于某些情况(如常见的www前缀或明确的顶级域),你可能需要一个更精确的方法或者使用第三方库如Apache Commons的`InternetDomainName`类。 ######[AI写代码神器 | 332点数解答 | 2024-01-15 23:15:23]
- Python实现深度优先爬虫:精准爬取百度域名下链接,模拟输出详细信息(GPT | 2142点数解答 | 2025-05-13 15:54:49)302
- Java 实现复制粘贴功能:打造简易文本复制粘贴程序(GPT | 1497点数解答 | 2024-08-25 09:40:33)420
- Java实现链表反转:迭代与递归双解法详解及开发实战指南(DeepSeek | 1409点数解答 | 2026-03-15 15:09:29)46
- Java代码:如何通过 POST 请求向指定 URL 保存报告( | 19点数解答 | 2024-05-20 09:08:06)323
- Java 代码纠错:搞定向指定 URL 发送 POST 请求的语法问题( | 404点数解答 | 2024-05-20 09:08:20)334
- 解决Java发送POST请求接收中文乱码问题:代码实现与优化建议( | 1689点数解答 | 2024-05-20 09:09:07)348
- 解决数据库“dm.jdbc.driver.dmexception: 数据溢出”问题的全步骤指南(阿里通义 | 598点数解答 | 2024-10-15 15:48:38)322
- 达梦数据库数据溢出问题排查及多维度解决方法(阿里通义 | 403点数解答 | 2024-10-15 15:48:41)1198
- Java技巧:用 indexOf 方法获取字符串中某子字符串所有出现位置( | 691点数解答 | 2023-12-28 19:49:03)327
- PHP代码:循环检测域名状态,借助HTTP请求与CURL实现(GPT | 947点数解答 | 2024-10-27 11:56:50)266
- "Fixing Postman Script: Correcting Login POST Request with JSON Data"(阿里通义 | 419点数解答 | 2024-10-29 19:35:25)265
- 使用 JavaScript 实现 HTTP 登录请求:从环境变量获取信息并发送 POST 请求(GPT | 68点数解答 | 2024-10-29 19:35:54)270