首页 > 代码库 > 19.网络

19.网络

1.Socket
Socket是个代表两台机器之间网络连接的对象。
建立Socket连接需要知道两项关于服务的信息:1.IP地址; 2.端口号
端口号:是一个16位宽,用来识别服务器上特定程序的数字,并且0~1023留给已知的特定服务使用。

2.客户端
1.使用BufferedReader从Socket上读取数据
   建立对服务器Socket连接
   Socket chatSocket = new Socket("127.0.0.1",5000);
   建立连接到Socket上底层输入串流的InputStreamReader
   InputStreamReader  stream = new InputStreamReader(chatSocket.getInputStream());
   建立BufferedReader来读取
   BufferReader reader = new BufferedReader(stream);
   String message = reader.readLine();

2.用PrintWriter写数据到Socket上
   对服务器建立Socket连接
   Socket chatSocket = new Socket("127.0.0.1",5000);
   建立链接到Socket的PrintWriter
   PrinterWriter writer = new PrinterWriter(chatSocket.getOutputStream());
   写入数据
   writer.println("message to send");
   writer.print("another message");

3.服务器程序
   服务器应用程序用到一对Scoket,客户端与服务器通过socket来沟通。
   一个是等待用户请求的ServerScoket,是在指定端口上的,服务器应用程序开始监听来自4242端口的客户端请求
   ServerSocket serverSock = new ServerSocket(4242);
   服务器创建出与客户端通信的新Socket
   Socket sock = serverSock.accept();
   accept方法会等待用户Socket连上,返回一个不同端口上的socktet便与和客户端通讯。


来自为知笔记(Wiz)


19.网络