1. 程式人生 > >have fun!

have fun!

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

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

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構成 URL的組成    二 構造器 構造器    三 API API    四 針對HTTP協議的URLConnection類       URLConnection:表示到URL所引用的遠端物件的連線。當與一個URL建立連線時,首先要在一個 URL 物件上通過方法 openConnection() 生成對應的 URLConnection 物件。如果連線過程失敗,將產生IOException. API