亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java.net.UnknownHostException異常的一般原因及解決步驟

 更新時間:2024年02月29日 10:03:39   作者:張紫娃  
關(guān)于java.net.UnknownHostException大家也許都比較熟悉,這篇文章主要給大家介紹了關(guān)于java.net.UnknownHostException異常的一般原因及解決步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

UnknownHostException 一般原因

UnknownHostException 是Java編程中常見的一個網(wǎng)絡(luò)異常,通常在試圖通過域名查找并連接到一個主機(jī)時拋出。這個異常的主要原因有以下幾點(diǎn):

1、DNS解析失?。?/strong> 當(dāng)Java程序嘗試將一個域名轉(zhuǎn)換為IP地址(即執(zhí)行DNS解析過程)時,如果DNS服務(wù)器無法找到與該域名對應(yīng)的IP地址,則會拋出此異常。這可能是由于:

  • 域名拼寫錯誤或格式不正確。
  • DNS服務(wù)器本身的問題,如宕機(jī)、配置錯誤或緩存過期等。
  • 網(wǎng)絡(luò)問題導(dǎo)致DNS查詢請求無法到達(dá)DNS服務(wù)器。

2、本地hosts文件配置問題: 在某些情況下,操作系統(tǒng)會先查看本地的hosts文件來解析域名。

如果hosts文件中沒有對特定域名的映射,或者映射的IP地址不正確,也會導(dǎo)致此異常。

3、網(wǎng)絡(luò)連接中斷或受限: 網(wǎng)絡(luò)連接存在問題。

例如防火墻阻止了DNS查詢請求,或者網(wǎng)絡(luò)連接完全斷開,都會使得DNS解析無法完成。

4、目標(biāo)主機(jī)不存在或不可達(dá):

所要訪問的主機(jī)已下線、遷移或尚未啟動服務(wù),因此DNS系統(tǒng)中找不到對應(yīng)的記錄。

5、臨時DNS解析延遲:

DNS更改傳播到全球所有DNS服務(wù)器需要時間,新注冊的域名或最近修改的DNS記錄可能在短時間內(nèi)不能被所有地方正確解析。

在開發(fā)環(huán)境中,有時可以暫時直接在本地hosts文件中添加域名和IP地址的對應(yīng)關(guān)系以快速測試功能。在服務(wù)器發(fā)送求時,就會 自動把域名轉(zhuǎn)成IP 進(jìn)行調(diào)用了。

解決步驟

以CSDN的域名為例(www.csdn.net)

第1步:用有互聯(lián)網(wǎng)的機(jī)器 win+r → cmd 進(jìn)入dos窗口

第2步:執(zhí)行 nslookup www.csdn.net 命令,獲取www.csdn.net域名對應(yīng)的IP,

C:\Users\zhang>nslookup www.csdn.net
服務(wù)器:  public1.114dns.com
Address:  114.114.114.114

非權(quán)威應(yīng)答:
名稱:    55cb88f4.csdn.net.cname.yunduns.com
Address:  123.129.227.28
Aliases:  www.csdn.net

第3步:打開hosts文件Windows:一般在C:\Windows\System32\drivers\etc\hostsLinux:一般在/etc/hosts

第4步:修改hosts文件,把域名和IP寫到hosts文件中,用于把域名解析成IP

第5步:執(zhí)行 ipconfig/flushdns 清除DNS緩存

第6步:完成,這樣就可以調(diào)到CSDN域名下的接口了。如https://www.csdn.net/xxx/login

常見場景

網(wǎng)絡(luò)請求:

當(dāng)你嘗試使用HttpURLConnection、HttpClient等工具通過域名發(fā)起HTTP/HTTPS請求時,如果DNS無法解析目標(biāo)域名的IP地址,則會拋出此異常。

   URL url = new URL("http://unresolved-domain.com");
   HttpURLConnection conn = (HttpURLConnection) url.openConnection();
   // 此處可能會拋出UnknownHostException

數(shù)據(jù)庫連接:

在JDBC中,如果你提供的數(shù)據(jù)庫URL是一個域名而非IP地址,并且該域名無法被DNS解析,那么在建立數(shù)據(jù)庫連接時也會拋出此異常。

   String url = "jdbc:mysql://unresolved-db-server:3306/mydatabase";
   Connection conn = DriverManager.getConnection(url, "username", "password");
   // 此處可能會拋出UnknownHostException

Socket通信:

在直接使用Socket進(jìn)行TCP/IP通信時,如果需要通過域名創(chuàng)建Socket連接,而域名未解析成功,同樣會觸發(fā)這個異常。

   try {
       InetAddress address = InetAddress.getByName("unresolved-domain.com");
   } catch (UnknownHostException e) {
       System.out.println("Failed to resolve the host.");
   }

服務(wù)發(fā)現(xiàn)與調(diào)用:

在微服務(wù)架構(gòu)中,客戶端可能依賴于服務(wù)注冊中心(如Eureka、Consul)獲取其他服務(wù)的地址,如果獲取到的地址是未解析成功的域名,后續(xù)進(jìn)行遠(yuǎn)程服務(wù)調(diào)用時也會遇到這個問題。

總結(jié)

到此這篇關(guān)于java.net.UnknownHostException異常的一般原因及解決步驟的文章就介紹到這了,更多相關(guān)java.net.UnknownHostException異常解決內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決SpringBoot引用別的模塊無法注入的問題

    解決SpringBoot引用別的模塊無法注入的問題

    這篇文章主要介紹了解決SpringBoot引用別的模塊無法注入的問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Spring Boot + MyBatis Plus 高效開發(fā)實(shí)戰(zhàn)從入門到進(jìn)階優(yōu)化(推薦)

    Spring Boot + MyBatis Plus 高效開發(fā)實(shí)戰(zhàn)從入

    本文將詳細(xì)介紹 Spring Boot + MyBatis Plus 的完整開發(fā)流程,并深入剖析分頁查詢、批量操作、動態(tài) SQL、樂觀鎖、代碼優(yōu)化等實(shí)戰(zhàn)技巧,感興趣的朋友一起看看吧
    2025-04-04
  • Java中Mono類的一些基本方法和示例代碼

    Java中Mono類的一些基本方法和示例代碼

    在Java編程中,我們經(jīng)常會遇到需要創(chuàng)建單例(singleton)對象的情況,單例模式是一種常見的設(shè)計(jì)模式,它保證一個類只有一個實(shí)例,并提供一個全局訪問點(diǎn),這篇文章主要給大家介紹了關(guān)于Java中Mono類的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • SpringCloud Netfilx Ribbon負(fù)載均衡工具使用方法介紹

    SpringCloud Netfilx Ribbon負(fù)載均衡工具使用方法介紹

    Ribbon是Netflix的組件之一,負(fù)責(zé)注冊中心的負(fù)載均衡,有助于控制HTTP和TCP客戶端行為。Spring Cloud Netflix Ribbon一般配合Ribbon進(jìn)行使用,利用在Eureka中讀取的服務(wù)信息,在調(diào)用服務(wù)節(jié)點(diǎn)時合理進(jìn)行負(fù)載
    2022-12-12
  • SpringBoot多環(huán)境配置及配置文件分類實(shí)例詳解

    SpringBoot多環(huán)境配置及配置文件分類實(shí)例詳解

    這篇文章主要介紹了SpringBoot多環(huán)境配置及配置文件分類,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-10-10
  • mybatis中insert主鍵ID獲取和多參數(shù)傳遞的示例代碼

    mybatis中insert主鍵ID獲取和多參數(shù)傳遞的示例代碼

    這篇文章主要介紹了mybatis中insert主鍵ID獲取和多參數(shù)傳遞的示例代碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • mybatis中的擴(kuò)展實(shí)現(xiàn)源碼解析

    mybatis中的擴(kuò)展實(shí)現(xiàn)源碼解析

    這篇文章主要介給大家紹了關(guān)于mybatis中擴(kuò)展實(shí)現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • SpringBoot使用Nacos配置中心的實(shí)現(xiàn)

    SpringBoot使用Nacos配置中心的實(shí)現(xiàn)

    這篇文章主要介紹了SpringBoot使用Nacos配置中心的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java獲取時間差(天數(shù)差,小時差,分鐘差)代碼示例

    Java獲取時間差(天數(shù)差,小時差,分鐘差)代碼示例

    這篇文章主要介紹了Java獲取時間差(天數(shù)差,小時差,分鐘差)代碼示例,使用SimpleDateFormat來實(shí)現(xiàn)的相關(guān)代碼,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • SpringBoot中添加監(jiān)聽器及創(chuàng)建線程的代碼示例

    SpringBoot中添加監(jiān)聽器及創(chuàng)建線程的代碼示例

    這篇文章主要介紹了SpringBoot中如何添加監(jiān)聽器及創(chuàng)建線程,文中有詳細(xì)的代碼示例,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-06-06

最新評論