- package test;
- import java.net.DatagramPacket;
- import java.net.DatagramSocket;
- import java.net.InetSocketAddress;
- public class UdpServer {
- /*
- * UDP服务端,监听本地端口:8200
- */
- public static void main(String arg[])
- {
- try
- {
- InetSocketAddress socketAddress = null;
- DatagramSocket ds = null;
- byte[] buffer = new byte[1024];
- DatagramPacket packet = null;
- socketAddress = new InetSocketAddress("180.180.1.136",8200);
- ds = new DatagramSocket(socketAddress);
- while(true)
- {
- //接收数据
- packet = new DatagramPacket(buffer, buffer.length);
- ds.receive(packet);//阻塞进程
- byte[] nBytes=packet.getData();
- System.out.println(nBytes.toString());
- //发送数据
- DatagramPacket dp = new DatagramPacket(buffer, buffer.length, packet.getAddress(), packet.getPort());
- dp.setData(nBytes);
- ds.send(dp);
- }
- }
- catch(Exception e)
- {
- e.printStackTrace();
- }
- }
- }
该程序为UDP传输服务端,监听本地端口:绑定本地IP和端口8200
思路:
1.建立udpSocket服务(DatagramSocket)
2.提供数据,并将数据封装到数据包中(DatagramPacket)
3.通过socket服务(send)的发送功能,并将数据包发送出去
4.关闭资源
转载于:https://blog.51cto.com/sdqdxiaoli/1066205