Java笔记网络编程-socket编程(UDP连接)

Java笔记网络编程-socket编程(UDP连接),第1张

Java笔记网络编程-socket编程(UDP连接) 一.简述
  1. UDP传输:UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是OSI参考模型中的传输层协议,它是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
  2. UDP和TCP对比
UDPTCP将数据源和目的封装成数据报中,不需要建立连接建立连接,形成传输数据的通道每个数据报的大小在限制在64k在连接中进行大数据量传输因无需连接,是不可靠协议通过三次握手完成连接,是可靠协议不需要连接,速度快必须建立连接,效率会稍低 二.编程步骤
  1. DatagramSocket与DatagramPacket建立发送端和接收端
  2. 建立发送包,调用Socket的发送接收方法
  3. 关闭Socket
  4. 发送端与接收端是两个独立的程序
三.简单实例

接收

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

public class Main_10_26_server {
    public static void main(String[] args) throws IOException {

        //1、 构件服务端 +端口
        DatagramSocket server=new DatagramSocket(8888);
        //2、封装成包 DatagramPacket(byte[] buf,int lenth)  相当于构建接受池
        byte[] container=new byte[1024];
        DatagramPacket datagramPacket=new DatagramPacket(container, container.length);
        //接收客户端发来的数据
        server.receive(datagramPacket);
        //获取接收到的数据
        byte [] data=datagramPacket.getData();
        //获取接收到的数据的长度
        int len=datagramPacket.getLength();
        //输出相关的信息
        System.out.println(new String(data,0,len));
        //关闭接收流
        server.close();

    }

}

发送端

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

public class Main_10_26_client {
    public static void main(String[] args) throws IOException {

        DatagramSocket datagramSocket=new DatagramSocket(9999);//创建udp套接字
        String meString="连接成功";
        byte[] bs=meString.getBytes();
        DatagramPacket datagramPacket=new DatagramPacket(bs, bs.length,new InetSocketAddress("localhost",8888));
        datagramSocket.send(datagramPacket);
        datagramSocket.close();

    }

}

运行结果:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5635146.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存