Java网络通信编程-UDP

2021-04-12 15:30

阅读:692

标签:str   联系   资源   服务端   div   int   col   案例   tst   

1.对于TCP和UDP主要是两种不同的协议,前者是“面向连接”,“安全”,后者是“面向无连接”,“速度快”,“不安全”。

2.端口地址在0~65535之间,其中0~1023之间的端口是用于一些知名的网络服务和应用,用户的普通网络应用程序应该使用1024以上的端口。

3.使用UDP主要涉及的对象有DatagramSocket,DatagramPacket,InetAddress。下面是UDP案例,代码如下:

client端:

package com.net;

import java.io.IOException;
import java.net.*;

/** UDP通信-client
 * Created by lichangyun on 2020/7/17.
 */
public class UdpClient {
    public static void main(String[] args) throws SocketException, UnknownHostException {

//        创建DatagramSocket
        DatagramSocket ds=new DatagramSocket();

//        创建DatagramPacket,打包
        String msg="我爱编程!";
        byte[] bytes = msg.getBytes();
        InetAddress address = InetAddress.getByName("127.0.0.1");
        int port=1000;

        DatagramPacket dp = new DatagramPacket(bytes, bytes.length, address, port);

        try {
//        建立联系
            ds.send(dp);
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            ds.close();
        }
    }
}

 

server端:

package com.net;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;

/**UDP-server
 * Created by lichangyun on 2020/7/20.
 */
public class UdpServer {
    public static void main(String[] args) throws IOException {

//        创建服务端对象
        DatagramSocket  ds= new DatagramSocket(1000);

//        创建包
        byte[] bytes = new byte[1024];
        DatagramPacket dp = new DatagramPacket(bytes, bytes.length);

//        接受客户端的数据
        ds.receive(dp);

//        打印到控制台
        System.out.println("接受到的数据:   "+new String(bytes,0,bytes.length));
//        释放资源
        ds.close();

    }
}

 

Java网络通信编程-UDP

标签:str   联系   资源   服务端   div   int   col   案例   tst   

原文地址:https://www.cnblogs.com/lichangyun/p/13351964.html

上一篇:python文件操作

下一篇:C/C++常见面试题


评论


亲,登录后才可以留言!