java 网络通讯:tcp,upd,http
java 网络通讯:tcp,upd,http
1.TCP通信服务端用的代表类:
ServerSocket类,注册端口。
调用accept()方法阻塞等待接收客户端连接。得到Socket对象。
TCP通信的基本原理?
客户端怎么发,服务端就应该怎么收。
客户端如果没有消息,服务端会进入阻塞等待。
Socket一方关闭或者出现异常、对方Socket也会失效或者出错。
需求:服务端实现步骤
创建ServerSocket对象,注册服务端端口。
调用ServerSocket对象的accept()方法,等待客户端的连接,并得到Socket管道对象。
通过Socket对象调用getInputStream()方法得到字节输入流、完成数据的接收。
释放资源:关闭socket管道
2.UDP协议通信场景
语音通话,视频会话等。
UDP发送端和接收端的对象是:
public DatagramSocket()?:创建发送端的Socket对象
public DatagramSocket(int port):创建接收端的Socket对象
数据包对象是哪个:
DatagramPacket
如何发送、接收数据包
使用DatagramSocket的如下方法:
public void send(DatagramPacket dp):发送数据包
public void receive(DatagramPacket dp) :接收数据包
单播:单台主机与单台主机之间的通信。
广播:当前主机与所在网络中的所有主机通信。
组播:当前主机与选定的一组主机的通信。
3.http:TCP通信如何实现BS请求网页信息回来呢?
客户端使用浏览器发起请求(不需要开发客户端)
服务端必须按照浏览器的协议规则响应数据。
浏览器使用什么协议规则呢?
HTTP协议(简单了解下)