Java基础知识强化之网络编程笔记07:TCP之服务器给客户端一个反馈案例

1. 首先我们搭建服务器端的代码,如下:

 1 package cn.itcast_07;
 2 
 3 import java.io.IOException;
 4 import java.io.InputStream;
 5 import java.io.OutputStream;
 6 import java.net.ServerSocket;
 7 import java.net.Socket;
 8 
 9 public class ServerDemo {
10     public static void main(String[] args) throws IOException {
11         // 创建服务器Socket对象
12         ServerSocket ss = new ServerSocket(9999);
13 
14         // 监听客户端的连接
15         Socket s = ss.accept(); // 阻塞
16 
17         // 获取输入流
18         InputStream is = s.getInputStream();
19         byte[] bys = new byte[1024];
20         int len = is.read(bys); // 阻塞
21         String server = new String(bys, 0, len);
22         System.out.println("server:" + server);
23 
24         // 获取输出流
25         OutputStream os = s.getOutputStream();
26         os.write("数据已经收到".getBytes());
27 
28         // 释放资源
29         s.close();
30         // ss.close();
31     }
32 }

 

2. 搭建客户端的代码,如下:

 1 package cn.itcast_07;
 2 
 3 import java.io.IOException;
 4 import java.io.InputStream;
 5 import java.io.OutputStream;
 6 import java.net.Socket;
 7 
 8 public class ClientDemo {
 9     public static void main(String[] args) throws IOException {
10         // 创建客户端Socket对象
11         Socket s = new Socket("192.168.12.92", 9999);
12 
13         // 获取输出流
14         OutputStream os = s.getOutputStream();
15         os.write("今天天气很好,适合睡觉".getBytes());
16 
17         // 获取输入流
18         InputStream is = s.getInputStream();
19         byte[] bys = new byte[1024];
20         int len = is.read(bys);// 阻塞
21         String client = new String(bys, 0, len);
22         System.out.println("client:" + client);
23 
24         // 释放资源
25         s.close();
26     }
27 }

 

先开服务器端,如下:

 

再开客户端,如下:

 

 

这时候我们回头看看服务器端,如下:

posted on 2015-10-08 12:14  鸿钧老祖  阅读(204)  评论(0)    收藏  举报

导航