Java中使用TCP协议的简单连接

来源:互联网 发布:雾炮机 知乎 编辑:程序博客网 时间:2024/06/07 13:09

这是一组非常基本的连接,

局域网中电脑A用作服务端,IP为192.168,31.168

电脑B用作客户端,IP为192.168.31.132


一. 服务端TcpServer_1.java

[java] view plain copy
  1. import java.net.*;  
  2. import java.io.IOException;  
  3. import java.io.PrintStream;  
  4.   
  5. public class TcpServer_1  
  6. {  
  7.     public static void main(String[] args)throws IOException  
  8.     {  
  9.         //创建一个ServerSocket, 用于监听客户端Socket的连接请求  
  10.         ServerSocket ss = new ServerSocket(30000);  
  11.         //用循环不断接收来自客户端的请求  
  12.         while(true)  
  13.         {  
  14.             //每当接收到一个客户端的请求,服务器也对应产生一个Socket  
  15.             Socket s = ss.accept();  
  16.             //将Socket对应的输出流包装成printStream  
  17.             PrintStream ps = new PrintStream(s.getOutputStream());  
  18.             ps.println("You have received message form server!");  
  19.             //关闭输出流,关闭socket  
  20.             ps.close();  
  21.             s.close();  
  22.         }  
  23.     }  
  24. }  


二. 客户端TcpClient_1.java

[java] view plain copy
  1. import java.net.*;  
  2. import java.io.IOException;  
  3. import java.io.BufferedReader;  
  4. import java.io.InputStreamReader;  
  5.   
  6. public class TcpClient_1  
  7. {  
  8.     public static void main(String[] args)throws IOException  
  9.     {  
  10.         Socket socket = new Socket("192.168.31.168"30000);  
  11.         //将Socket对应的输入流包装成BufferedReader  
  12.         BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));  
  13.         String line = br.readLine();  
  14.         System.out.println("Get message form Server: " + line);  
  15.         //关闭输入流,关闭Socket;  
  16.         br.close();  
  17.         socket.close();  
  18.     }  
  19. }  

三. 先在电脑A上运行服务端,然后在电脑B上运行客户端。运行结果:

服务端:


客户端: