2020-03-26-Java

1.TCP编程回顾

ServerSocket:用于创建服务端监听者,它的输入流就是客户端发送过来的数据;它的输出流就是向客户端发送的数据。
Socket:用于创建客户端监听者,它的输入流就是服务器发送过来的数据,它的输出流就是向服务器发送的数据。

2.TCP编程,客户端向服务器发送信息

步骤:
(1)创建ServerSocket
(2)accept等待客户端连接
(3)得到客户端连接,获取输入流
(4)从输入流中获取客户端发送的消息
(5)创建Socket
(6)获取输出流,向输出流中写入数据
(7)启动ServerSocket
(8)启动Socket
【案例】


image.png

TCPServer:


image.png

TCPServer.java
image.png

image.png

MyTest.java


image.png

TCPClient:


image.png

TCPClient.java


image.png

image.png

MyTest.java
【案例2】客户端向服务器发送信息,服务端向客户端发送信息。

3.如何使用TCP协议,发送图片给服务器。

思考:
Server:
(1)通过服务器的输入流获取图片数据
(2)图片数据大小事前不知道,读取输入流中信息采用循环的方式。
(3)循环中读取输入流,读一点写一点。
(4)写到哪里去?需要事前创建一个文件输出流。输出流不是指向客户端,而是指向磁盘文件。
client:
(1)创建一个输入流,指向磁盘文件
(2)创建一个输出流,指向服务器端
(3)边读编写,从磁盘中读取文件,写入到输出流。
【案例】
PictureServer:


image.png

TCPServer.java


image.png

image.png

image.png

image.png

MyTest.java


image.png

PictureClient:


image.png

TCPClient.java
image.png

image.png

image.png

MyTest.java


image.png

测试:
server控制台:


image.png

client控制台:


image.png

你可能感兴趣的:(2020-03-26-Java)