1. 程式人生 > >解決java網路程式設計IPv6問題

解決java網路程式設計IPv6問題

1.在android系統開發中

// android2.2不支援IpV6,以防止android2.2下mina報錯
        System.setProperty("java.net.preferIPv6Addresses", "false");

2.如果系統中開啟了IPV6協議(比如window7),java網路程式設計經常會獲取到IPv6的地址,這明顯不是我們想要的結果,搜尋發現很多蹩腳的做法是:禁止IPv6協議。其實檢視官方文件有詳細的說明:

在實際的運用中有以下幾種辦法可以實現指定獲取IPv4的地址:

1. 在java啟動命令中增加一個屬性配置:-Djava.net.preferIPv4Stack=true

1 java -Djava.net.preferIPv4Stack=true -cp .;classes/ michael.net.TestInetAddress
2
3 java -Djava.net.preferIPv6Addresses=true -cp .;classes/ michael.net.TestInetAddress
2.在java程式裡設定系統屬性值如下
1 package michael.net;
2
3 import java.net.InetAddress;
4
5 /**
7 * @author Michael
8 */
9 public class TestInetAddress {
10
11
/**
12 * @param args

相關推薦

解決java網路程式設計IPv6問題

1.在android系統開發中 // android2.2不支援IpV6,以防止android2.2下mina報錯         System.setProperty("java.net.pr

java網路程式設計(一):java傳統的阻塞IO以及多執行緒解決方案

最近在看一些IO模型相關的東西,被同步IO、非同步IO、阻塞IO、非阻塞IO概念弄的有點暈,後面再慢慢學習和領悟。我們以socket IO程式設計為例子,我用的是JDK1.7.0_80,測試工具用的是

java網路程式設計_IO模型

理解java的BIO、NIO、AIO的原理: 一、UNIX程式設計中的五種IO模型: 1. 阻塞IO 外賣小哥去商家取外賣,到了麻辣燙店,商家還沒做好, 外賣小哥雖然還有其他單子要送,但是不得不焦急地等著商家; 2. 非阻塞IO 外賣小哥去商家取外賣

Java網路程式設計基礎部分

轉載:文章來源 網路通訊協議 網路通訊協議有很多種,目前應用最廣泛的是TCP/IP協議(Transmission Control Protocal/Internet Protoal傳輸控制協議/英特網互聯協議),它是一個包括TCP協議和IP協議,UDP(User Datagram Protoco

20180827-Java網路程式設計

  Java 網路程式設計 網路程式設計是指編寫執行在多個裝置(計算機)的程式,這些裝置都通過網路連線起來。 java.net包中J2SE的API包含有類和介面,它們提供低層次的通訊細節。你可以直接使用這些類和介面,來專注於解決問題,而不用關注通訊細節。 java.net包中提供了兩種常見的

Java網路程式設計的基本網路概念

  前言 自己網路這方面的知識很是薄弱,每次面試被問到這部分都會卡殼,所以很尷尬,然後最近也是有些時間了,就趕緊把自己的不足補充一下。雖然最近也在看設計模式,但是總看設計模式也容易煩,所以就並行學習,看看設計模式,然後再看看這網路程式設計。 網路 首先熟悉一下, 什麼是網路,網路是幾乎可以實

java網路程式設計中常用的類

java網路程式設計中常用的類 1、InetAddress 用於封裝計算機的IP地址和DNS(Domain Name System域名系統)(沒有埠資訊) InetAddress沒有構造器,要得到物件只能通過靜態方法實現 /** * 使用getLocalHost的方法建立InetA

java 網路程式設計——TCP 的三次握手和四次揮手

文章目錄 TCP報頭 三次握手 未連線佇列 四次揮手 狀態詳解 在TCP/IP協議中,TCP協議提供可靠的連線服務,採用三次握手建立一個連線. TCP報頭 埠號:用來標識

深入Java網路程式設計與NIO(二)

Java NIO 與 Netty NIO NIO的特性/NIO與IO區別: 1)IO是面向流的,NIO是面向緩衝區的; 2)IO流是阻塞的,NIO流是不阻塞的; 3)NIO有選擇器,而IO沒有。 讀資料和寫資料方式: 從通道進行資料讀取 :建立一個緩衝區,然後請求通道讀取資料。

Java學習---Java網路程式設計

Java 網路程式設計 網路程式設計是指編寫執行在多個裝置(計算機)的程式,這些裝置都通過網路連線起來。 java.net 包中 J2SE 的 API 包含有類和介面,它們提供低層次的通訊細節。你可以直接使用這些類和介面,來專注於解決問題,而不用關注通訊細節。 java.net

201711671223《Java程式設計》第十二週學習總結13章Java網路程式設計

201711671223《Java程式設計》第十二周學習總結13章Java網路程式設計 URL類(Uniform Resource Locator)是java.net包中的一個重要的類,URL的例項封裝著一個統一資源定位符,使用URL建立物件的應用程式稱作客戶端程式。 一個URL物件通常包含最基

Java - 30 Java 網路程式設計

Java 網路程式設計 網路程式設計是指編寫執行在多個裝置(計算機)的程式,這些裝置都通過網路連線起來。 java.net包中J2SE的API包含有類和介面,它們提供低層次的通訊細節。你可以直接使用這些類和介面,來專注於解決問題,而不用關注通訊細節。 java.net包中提供了兩種常見的網路協議的支援:

java網路程式設計實現登陸

功能描述: 客戶端 輸入使用者名稱密碼,併發送給伺服器,伺服器端接受資訊並進行驗證字後,返回客戶端成功或者失敗。 客戶端程式碼 import java.io.BufferedReader; import java.io.IOException; import jav

java網路程式設計基礎

1.netstat -ano    檢視當前計算機所有協議的通訊狀態,包括協議名,當前計算機地址,其他計算機的地址,狀態:PID 2.netstat -ano | findstr 埠號    檢視對應的埠號是否被佔用,如果沒有佔用,沒有訊息輸出,如果有訊息輸出,代表該埠被佔用

Java網路程式設計,socket實現一對一全雙工通訊聊天功能

本文使用socket的長連線,進行訊息的傳送和接受。 1、兩端 client 端,server端 2、兩執行緒 客戶端、伺服器端,各開兩個執行緒,實現讀寫,可以全雙工通訊,非同步傳送,非同步接受。 3、兩注意 程式等待輸入和一直處於等待訊息發來,所以,用到死迴圈。

java網路程式設計(2)URLDecoder和URLEncoder

一下為程式碼示例,具體的講解穿插在程式碼中 import java.net.URLDecoder; import java.net.URLEncoder; public class URLDecoderTest { public static void mai

java網路程式設計(3)TCP

使用TCP進行網路資料傳輸的時候,TCP會在需要傳輸資料的兩端建立兩個Socket(插座),並且在兩個Socket之間建立一條虛擬鏈路,然後這兩臺主機就可以進行通訊了。 下面是一個很簡單的例子。 Server類建立一個ServerSocket物件,用於監聽客戶端Socke

Java網路程式設計2.UDP網路程式設計

UDP網路程式設計 1、UDP協議傳送資料 (1)UDP協議傳送資料的步驟: UDP協議傳送資料 A: 建立傳送端Socket物件 B: 建立資料,並把資料打包 C: 呼叫Socke

Java網路程式設計4.UDP網路程式設計之多執行緒優化

UDP網路程式設計之多執行緒優化——DatagramSocket類 1、UDP網路程式設計之多執行緒優化的思想 (1)一個執行緒實現客戶端——傳送資料 (2)一個執行緒實現伺服器端——接收資料

Java網路程式設計7.TCP網路程式設計之客戶端鍵盤錄入伺服器控制檯輸出

TCP網路程式設計之客戶端鍵盤錄入伺服器控制檯輸出 1、鍵盤錄入資料 BufferedReader br = new BufferedReader(new InputStreamReader(S