演示TCP的传输的客户端和服务庙的互访

 1 package NetWork;
 2 
 3 import java.io.InputStream;
 4 import java.io.OutputStream;
 5 import java.net.ServerSocket;
 6 import java.net.Socket;
 7 
 8 /*
 9  * 演示TCP的传输的客户端和服务庙的互访
10  * 
11  *     需求:客户端给出服务器发送数据 ,服务端收到信息后给客户端反馈信息
12  */
13 
14 /*
15  * 客户端
16  */
17 public class Tcp2 {
18     public static void main(String[] args) throws Exception {
19         Socket socket = new Socket("192.168.1.101", 21101); // 建立连接
20         // 建立给服务器发送数据的输入流
21         OutputStream out = socket.getOutputStream(); // 获取输入流
22         out.write("我发过来了".getBytes()); // 将需要发送的数据使用.getBytes方法转换成字节流
23 
24         // 建立服务器反馈过来的数据,并且将数据打印出来
25         InputStream in = socket.getInputStream();
26         byte[] buf = new byte[1024];
27         int len = in.read(buf);
28         System.out.println(new String(buf, 0, len));
29     }
30 }
31 
32 class TcpServer2 {
33     public static void main(String[] args) throws Exception {
34         ServerSocket server = new ServerSocket(21101); // 建立服务
35 
36         Socket socket = server.accept();// 获取连接
37 
38         // 获取客户端的信息
39         System.out.println("ip:" + socket.getInetAddress().getHostAddress());
40 
41         // 接收客户端发送过来的数据
42         InputStream in = socket.getInputStream();
43 
44         byte[] buf = new byte[1024];// 定义字符串缓冲区
45 
46         int len = 0;
47 
48         while ((len = in.read(buf)) != -1) {
49             System.out.println(new String(buf, 0, len));
50         }
51 
52         // 给客户端反馈信息
53         OutputStream out = socket.getOutputStream();
54         out.write("我收到了,".getBytes());
55 
56         socket.close();// 关闭资源
57     }
58 }

 

posted on 2013-07-27 21:02  樱花满天  阅读(198)  评论(0编辑  收藏  举报

导航