1.TCP编程回顾
ServerSocket:用于创建服务端监听者,它的输入流就是客户端发送过来的数据;它的输出流就是向客户端发送的数据。
Socket:用于创建客户端监听者,它的输入流就是服务器发送过来的数据,它的输出流就是向服务器发送的数据。
2.TCP编程,客户端向服务器发送信息
步骤:
(1)创建ServerSocket
(2)accept等待客户端连接
(3)得到客户端连接,获取输入流
(4)从输入流中获取客户端发送的消息
(5)创建Socket
(6)获取输出流,向输出流中写入数据
(7)启动ServerSocket
(8)启动Socket
【案例】
TCPServer:
TCPServer.java
MyTest.java
TCPClient:
TCPClient.java
MyTest.java
【案例2】客户端向服务器发送信息,服务端向客户端发送信息。
3.如何使用TCP协议,发送图片给服务器。
思考:
Server:
(1)通过服务器的输入流获取图片数据
(2)图片数据大小事前不知道,读取输入流中信息采用循环的方式。
(3)循环中读取输入流,读一点写一点。
(4)写到哪里去?需要事前创建一个文件输出流。输出流不是指向客户端,而是指向磁盘文件。
client:
(1)创建一个输入流,指向磁盘文件
(2)创建一个输出流,指向服务器端
(3)边读编写,从磁盘中读取文件,写入到输出流。
【案例】
PictureServer:
TCPServer.java
MyTest.java
PictureClient:
TCPClient.java
MyTest.java
测试:
server控制台:
client控制台: