网络编程
TCP (三次握手) io流传输大量数据 效率低
UDP 64K数据 不需要连接
Socket 传输信息 客户与服务端都有
InetAddress 类获取ip 等信息
io流 传输数据
传送之后必须 //结束标志流 否则一直等待
socket.shutdownOutput();
socket.shutdownInput();
使用字符流时可以使用newline() 接受必须readline()

demo1 客户端和服务端连接 传输数据

-----------------------------

demo2 网咯上传文件
使用 buffer Out/InputStream 包装节点流
思路:客户端 读取本地图片,通过socket流传到服务器接受流,服务器接受流,保存到本地
注意 socket.shutdown 结束标志 输出流.flush

客户端

服务端

netstat 网络监听

UDP
发送端 - 接收端
DatagramPacket对象

基本流程

udp demo1
DatagramSocket 创建socket
DatagramPacket 传送数据对象
socket.receive 接受数据
socket.send 发送数据
接受端:

发送端:

demo tcp 文件下载 客户端-服务器
本地读文件 socket通信流 传递
客户端:

服务端:

总结
TCP io配合传输
UDP 对象传输

通信系统(多线程 io 网络 面向对象)
currentHashMap 集合管理 多线程对应的socket
客户端A socket-服务器socket-客户端B socket
服务端 根据 不同的消息类型 做出响应(对不同的socket进行操作)

评论