gpt4 book ai didi

java - 有没有办法在运行时刷新Java应用程序的DNS服务器详细信息?

转载 作者:太空宇宙 更新时间:2023-11-04 04:43:20 24 4
gpt4 key购买 nike

我们有一个使用主机名连接到不同应用程序的应用程序。如果我更改运行应用程序的系统的 DNS 服务器,应用程序将开始失败并显示“java.net.UnknownHostException”。但我可以从系统中使用 FQDN 向不同的应用程序发送 ping 请求。要使 DNS 服务器更改生效,我们必须重新启动应用程序。

Java 中有什么方法可以在运行时刷新 DNS 服务器详细信息吗?

最佳答案

您可以通过 3 种解决方案关闭 Java 的 dns 缓存:

解决方案 1:

使用此标志启动您的程序:

-Dsun.net.inetaddr.ttl=0

解决方案 2:

在 Java 代码顶部使用 setProperty

java.security.Security.setProperty("networkaddress.cache.ttl" , "0")

解决方案 3:

$JRE_HOME/lib/security/java.security中设置:

networkaddress.cache.ttl = 0
networkaddress.cache.negative.ttl = 0

关于java - 有没有办法在运行时刷新Java应用程序的DNS服务器详细信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53814441/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com