获取到主机名后,我们需要对主机名进行处理,以获取一级域名。
public class DomainUtil {
public static String getDomain(String url) {
try {
URL urlObj = new URL(url);
String host = urlObj.getHost();
return host;
} catch (Exception e) {
e.printStackTrace();
return null;
public static String getHostName(String host) {
String[] parts = host.split("\\.");
if (parts.length > 1) {
return parts[parts.length - 2] + "." + parts[parts.length - 1];
return host;
2.3 分割主机名
通过获取到的主机名,我们可以使用split方法将主机名按照"."进行分割,得到每个子域名。
public class DomainUtil {
public static String getDomain(String url) {
try {
URL urlObj = new URL(url);
String host = urlObj.getHost();
return host;
} catch (Exception e) {
e.printStackTrace();
return null;
public static String getHostName(String host) {
String[] parts = host.split("\\.");
if (parts.length > 1) {
return parts[parts.length - 2] + "." + parts[parts.length - 1];
return host;
public static String[] getSubDomains(String host) {
String[] parts = host.split("\\.");
if (parts.length > 2) {
String[] subDomains = new String[parts.length - 2];
for (int i = 0; i < subDomains.length; i++) {
subDomains[i] = parts[i];
return subDomains;
return new String[0];
2.4 获取一级域名
最后,我们可以通过获取到的子域名数组,将第一个子域名与主域名拼接起来,得到一级域名。
public class DomainUtil {
public static String getDomain(String url) {
try {
URL urlObj = new URL(url);
String host = urlObj.getHost();
return host;
} catch (Exception e) {
e.printStackTrace();
return null;
public static String getHostName(String host) {
String[] parts = host.split("\\.");
if (parts.length > 1) {
return parts[parts.length - 2] + "." + parts[parts.length - 1];
return host;
public static String[] getSubDomains(String host) {
String[] parts = host.split("\\.");
if (parts.length > 2) {
String[] subDomains = new String[parts.length - 2];
for (int i = 0; i < subDomains.length; i++) {
subDomains[i] = parts[i];
return subDomains;
return new String[0];
public static String getFirstLevelDomain(String host) {
String[] subDomains = getSubDomains(host);
if (subDomains.length > 0) {
return subDomains[0] + "." + getHostName(host);
return host;
3. 总结
通过以上步骤,我们可以成功获取到一个URL的一级域名。这个方法适用于大部分常见的URL,包括http和https等。
使用示例:
public class Main {
public static void main(String[] args) {
String url = "
String domain = DomainUtil.getFirstLevelDomain(url);
System.out.println("一级域名:" + domain);
输出结果:
一级域名:example.com
总结一下,通过以上步骤,我们
java的springBoot安全架构图 springboot安全配置
1.简介在本文中,我们将了解Spring Boot对spring Security的支持。简而言之,我们将专注于默认Security配置以及如何在需要时禁用或自定义它。2.默认Security设置为了增加Spring Boot应用程序的安全性,我们需要添加安全启动器依赖项:<dependency>
<groupId>org.springframework.boot&