have fun!
阿新 • • 發佈:2018-12-15
InetAddress類的使用
netAddress byName = InetAddress.getByName("www.baidu.com"); System.out.println(byName.getHostName());//獲取主機名 System.out.println(byName.getHostAddress()); //獲取IP地址 System.out.println("---------------------獲取本地地址------------"); InetAddress localHost = InetAddress.getLocalHost(); System.out.println(localHost);
UDP
@Test public void client() throws Exception{ //建立一個客戶端 DatagramSocket ds = new DatagramSocket(); /* * 第一個引數 : 內容 * 第二個引數 : 從陣列的哪個位置開始 * 第三個引數: 從陣列中的哪個位置開始傳送到某個位置內容的長度 * 第四個引數 :伺服器的地址 * 第五個引數: 埠號 */ //資料報、資料包 byte[] bytes = "aaaaaabbcc".getBytes(); DatagramPacket p = new DatagramPacket(bytes, 0, bytes.length, InetAddress.getLocalHost(),3267); //傳送資料 - 將資料包中的內容傳送出去 ds.send(p); ds.close(); } @Test public void server() throws Exception{ //建立一個服務端 DatagramSocket ds = new DatagramSocket(3267); byte[] b = new byte[1024]; //建立一個數據包 DatagramPacket p = new DatagramPacket(b, b.length); //接收資料 - 將接收到的資料放入到資料包中 ds.receive(p); System.out.println(new String(b,0,p.getLength())); ds.close(); }
TCP
@Test public void client() throws Exception, Exception{ /* * 第一個引數 : 伺服器的地址 * 第二個引數 : 伺服器的埠號 */ Socket socket = new Socket(InetAddress.getLocalHost(), 3266); //資料的傳輸 OutputStream os = socket.getOutputStream(); //寫資料 os.write("aaa".getBytes()); //通知伺服器客戶端資料寫完了 socket.shutdownOutput(); //接收伺服器的資料 InputStream is = socket.getInputStream(); byte[] b = new byte[1024]; int len = 0; while((len = is.read(b)) != -1){ System.out.println("客戶端:" + new String(b,0,len)); } socket.shutdownInput(); //關流 os.close(); is.close(); //關閉客戶端 socket.close(); } @Test public void Server() throws Exception{ //設定伺服器的埠號 ServerSocket ss = new ServerSocket(3266); //伺服器接收客戶端的請求 Socket accept = ss.accept(); //讀資料 InputStream is = accept.getInputStream(); byte[] b = new byte[1024]; int len = 0; while((len = is.read(b)) != -1){ System.out.println("伺服器:" + new String(b,0,len)); } accept.shutdownInput(); //向客戶端傳送訊息 OutputStream os = accept.getOutputStream(); os.write("bbbbbb".getBytes()); accept.shutdownOutput(); //關流 is.close(); accept.close(); os.close(); //關伺服器 ss.close(); }
14.4 URL 一 URL構成 二 構造器 三 API 四 針對HTTP協議的URLConnection類 URLConnection:表示到URL所引用的遠端物件的連線。當與一個URL建立連線時,首先要在一個 URL 物件上通過方法 openConnection() 生成對應的 URLConnection 物件。如果連線過程失敗,將產生IOException.