Socket網絡編程(三)
阿新 • • 發佈:2018-11-29
shu style ava socket lin 客戶端 finally accep span
TCP協議網絡通訊案例(http協議)
1、創建TcpServer(tcp服務端)
package com.cppdy.tcp; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; //tcp服務端 public class TcpServer { public static void main(String[] args) throwsException { System.out.println("tcp服務端啟動啦……"); ServerSocket serverSocket = new ServerSocket(8080); try { // 會阻塞在這裏,等待連接 Socket accept = serverSocket.accept(); InputStream inputStream = accept.getInputStream(); byte[] bytes = newbyte[1024]; int length = inputStream.read(bytes); String result = new String(bytes, 0, length); System.out.println("服務端接收到客戶端發送的消息:" + result); OutputStream outputStream = accept.getOutputStream(); PrintWriter printWriter = new PrintWriter(outputStream); printWriter.println("服務器收到消息了,這是服務器自動反饋……"); printWriter.flush(); accept.shutdownOutput(); } catch (IOException e) { e.printStackTrace(); } finally { serverSocket.close(); } } }
2、創建TcpClient(tcp客戶端)
package com.cppdy.tcp; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.Socket; //tcp客戶端 public class TcpClient { public static void main(String[] args) throws Exception { Socket socket = new Socket("127.0.0.1", 8080); try { OutputStream outputStream = socket.getOutputStream(); String msg = "吹泡泡的魚"; outputStream.write(msg.getBytes()); System.out.println("客戶端發送消息完畢……"); InputStream inputStream = socket.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(inputStream)); String result = br.readLine(); System.out.println("客戶端==》服務器返回的結果:" + result); } catch (IOException e) { e.printStackTrace(); } finally { socket.close(); } } }
Socket網絡編程(三)