UDP实现消息发送

UDP实现消息发送

  • 发送端
package com.caster.IP.lesson03;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

//不需要连接服务器
public class UdpClientDemo01 {
    public static void main(String[] args) throws Exception{
    //1.建立一个Socket
        DatagramSocket socket = new DatagramSocket();
    //2.建立包
        String msg = "你好";
        String msg1 = "为什么收不到字符";
        //发送给谁
        InetAddress address = InetAddress.getByName("localhost");
        int port = 9090;
        //数据 长度 ip 端口
        DatagramPacket packet1 = new DatagramPacket(msg.getBytes(),0,address,port);
        DatagramPacket packet2 = new DatagramPacket(msg1.getBytes(),0,address,port);
    //3.发送包
        socket.send(packet1);
        socket.send(packet2);
    //4.关闭流
        socket.close();

    }
}
  • 接收端
package com.caster.IP.lesson03;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
//还是要等待客户端的连接!
public class UdpServerDemo01 {
    public static void main(String[] args) throws Exception{
        //开放端口
        DatagramSocket socket = new DatagramSocket(9090);
        //接收数据包
        byte[] buffes = new byte[2048];
        DatagramPacket packet = new DatagramPacket(buffes, 0, buffes.length);
        //阻塞接收
        socket.receive(packet);
        System.out.println(packet.getAddress().getHostAddress());
        System.out.println(new String(packet.getData(),0, packet.getLength()));
        System.out.println("--------------");
        socket.close();

    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值