javaoop-udp协议的解析
来源:互联网 发布:外盘期货交易软件 编辑:程序博客网 时间:2024/04/29 00:39
1.基本概念:
1.DatagramPacket表示存放数据的数据报,
2. DatagramSocket表示接受或发送数据报的套接字
DatagramSocket(int port):与上面不同的是,绑定到特定端口号,其它不变
close(): 关闭套接字
recevie(DatagramPacket dp): 接受数据报
send(DatagramPacket dp): 发送数据报
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
这里触及了数据报,下面介绍数据报:
接受类型:
DatagramPacket(byte[] buf, int length):
用来接受长度为length的buf数据(即数据存于字节数组buf中)
2. 发送类型:
1.服务器端 接收之后 获取的 客户端的 端口与和 地址之后 就会用到 和 最开始 发送的 也会用到
DatagramPacket(byte[] buf, int length, InetAddress address, int port);
将length长的buf数据发送到指定的地址的端口号处
将length长的buf数据发送到指定的套接字地址处
有上面可知,我们发送数据时构造的数据报应该是发送类型的,而接受数据报时应该是接受类型的
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
1.一个接收方,一个发送方
2.当接收方收到发送方发送的消息后,打印发送的消息及发送方的地址和端口号,之后向发送反馈一条信息“接受方:我收到了!”
3.发送方打印出接收方反馈的消息
详细思路见代码:
public class MyudpServer {
public static void main(String[] args) {
try {
DatagramSocket server=new DatagramSocket(6789);
byte [] bys=new byte[1024];
//创建接收消息的数据包
DatagramPacket dpreceive=new DatagramPacket(bys,bys.length);
//接收发送过来的消息
server.receive(dpreceive);
String msg=new String(dpreceive.getData(),0,dpreceive.getLength());
System.out.println("接收到的消息是:"+msg);
InetAddress addr = dpreceive.getAddress();
int port=dpreceive.getPort();
msg="你好客户端,欢迎你!";
//发送消息的数据包
DatagramPacket dpsend = new DatagramPacket(msg.getBytes(),msg.getBytes().length,addr,port);
server.send(dpsend);
server.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
public class MyudpClient {
public static void main(String[] args) {
try {
DatagramSocket client=new DatagramSocket();
String msg="你好,服务器。。。。";
DatagramPacket dpsend = new DatagramPacket(
msg.getBytes(),msg.getBytes().length,
InetAddress.getByName("127.0.0.1"),6789);
client.send(dpsend);
byte[] bys=new byte[1024];
//创建接收消息的数据包
DatagramPacket dpreceive=new DatagramPacket(bys,bys.length);
//接收发送过来的消息
client.receive(dpreceive);
msg=new String(dpreceive.getData(),0,dpreceive.getLength());
System.out.println("服务器说:"+msg);
client.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
- javaoop-udp协议的解析
- 解析TCP/UDP协议的通讯软件
- UDP协议解析
- UDP-RTP协议解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- UDP协议结构详细解析
- UDP协议疑难杂症全景解析
- UDP协议疑难杂症全景解析
- JavaOOP ArrayList自动扩容解析
- javaoop的知识点
- JavaOOP的基础知识总结
- UDP协议的数据包
- C#三十 Ado.net和XML
- 模型化开发过程中要基本掌握的Matlab/Simulink的功能
- LeetCode Reorder List
- PS基础知识一
- bzoj 2120: 数颜色(带修改的莫队算法)
- javaoop-udp协议的解析
- 经典面试题
- Longest Palindromic Substring
- poj 3230 Travel
- linux上java调用shell脚本
- cPanel下FTP对话管理
- 博弈论 取石子(一)
- 利用WIX制作安装包(1)
- Golang 模块扩展