java技术--网络数据传输UDP

在 TCP/IP 协议的传输层除了一个 TCP 协议之外,还有一个 UDP 协议。
UDP 协议是用户数据报协议的简称,也用于网络数据的传输。

下面是在 Java 中使用 UDP 协议发送数据的步骤:
代码示例:
//发送方
public class Client {
    public static void send(){        
        try {
           //1. 使用 DatagramSocket() 创建一个数据包套接字
            DatagramSocket socket = new DatagramSocket();
            String text = "test";
            byte[] buf = text.getBytes();
             ///2. 使用 DatagramPacket() 创建要发送的数据包
            DatagramPacket packet = new DatagramPacket(buf, buf.length, InetAddress.getLocalHost(), 9002);
             //3. 使用 DatagramSocket 类的 send() 方法发送数据包
            socket.send(packet);
            socket.close();
        } catch (Exception e) {            
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        send();
    }
}

//接收方
public class Server {
	public void server(){
        try {
            System.out.println("start===================start");
            //1. 使用 DatagramSocket() 创建一个数据包套接字,并将其绑定到指定的端口(与发送方端口一致)
            DatagramSocket socket = new DatagramSocket(9002);
            while(true){ 
               //2. 使用 DatagramPacket 创建字节数组来接收数据包。
                byte[] buf = new byte[2048];
                DatagramPacket packet = new DatagramPacket(buf, buf.length);
                //3.使用 DatagramPacket 类的 receive() 方法接收 UDP 包。
                socket.receive(packet);
                byte[] data = packet.getData();
                String msg = new String(data, 0, packet.getLength());
                System.out.println(msg);
            }
        } catch (Exception e) {
            e.printStackTrace(); 
        }
    }
    public static void main(String[] args) {
        new Thread(){
            @Override
            public void run() {
                Server server = new Server();
                server.server();
            }
        }.start();
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值