DatagramChannel 数据传输

在java中使用UDP传输数据比TCP更加简单。和socket的TCP不同,UDP不是面向连接的协议。使用UDP时,只要知道服务器IP和端口就可以直接向对方发送数据。在java中使用DatagramChannel来处理UDP的数据传输。

public class UDPClient {

    public static void main(String[] args) {
        new UDPClient().send();
    }
    @SneakyThrows
    public void send() {
        DatagramChannel channel = DatagramChannel.open();
        //设为阻塞模式
        channel.configureBlocking(false);
        ByteBuffer buffer = ByteBuffer.allocate(1024);
        Scanner scanner = new Scanner(System.in);
        log.info("UDP客户端启动成功!");
        log.info("请输入发送内容:");
        while (scanner.hasNext()) {
            String next = scanner.next();
            Date date = new Date();
            buffer.put((date + ">>"+next).getBytes());
            buffer.flip();
            channel.send(buffer, new InetSocketAddress("127.0.0.1", 8888));
            buffer.clear();
        }
        channel.close();
    }
}
上一篇:Linux部署YUM仓库


下一篇:CentOS8 安装 Chrome浏览器