zoukankan      html  css  js  c++  java
  • java基础篇---网络编程(UDP程序设计)

    UDP程序设计

    在TCP的索引操作都必须建立可靠地连接,这样一来肯定会浪费大量的系统性能,为了减少这种开销,在网络中又提供了另外一种传输协议---UDP,不可靠的连接,这种协议在各个聊天工具中被广泛的应用。

    咋UDP开发中使用DatagramPacket包装一条要发送的信息,之后使用DatagramSocket用于完成信息的发送操作。

    例如:现在使用聊天工具进行聊天的功能,那么A的发送的信息B不一定可以接受的到,因为使用的是UDP的协议。

    UDP中主要是使用数据报协议发送的。

    DatagramPacket中的方法

    是包含真实的是要发送的信息,称为数据报

    所有的数据报使用DatagramPacket进行发送的操作

    DatagramSocket

    那么如果要想运行程序,则在数据报的开发中,应该首先保证客户端要打开

    import java.net.DatagramPacket ;
    import java.net.DatagramSocket ;
    
    public class UDPClient{
        public static void main(String args[]) throws Exception{    // 所有异常抛出
            DatagramSocket ds = null ;        // 定义接收数据报的对象
            byte[] buf = new byte[1024] ;    // 开辟空间,以接收数据
            DatagramPacket dp = null ;        // 声明DatagramPacket对象
            ds = new DatagramSocket(9000) ;    // 客户端在9000端口上等待服务器发送信息
            dp = new DatagramPacket(buf,1024) ; // 所有的信息使用buf保存
            ds.receive(dp)  ;    // 接收数据
            String str = new String(dp.getData(),0,dp.getLength()) + "from " + 
                dp.getAddress().getHostAddress() + ":" + dp.getPort() ;
            System.out.println(str) ;    // 输出内容
        }
    };

    要进一步等待服务器发送信息

    import java.net.DatagramPacket ;
    import java.net.DatagramSocket ;
    import java.net.InetAddress ;
    
    public class UDPServer{
        public static void main(String args[]) throws Exception{    // 所有异常抛出
            DatagramSocket ds = null ;        // 定义发送数据报的对象
            DatagramPacket dp = null ;        // 声明DatagramPacket对象
            ds = new DatagramSocket(3000) ;    // 服务端在3000端口上等待服务器发送信息
            String str = "hello World!!!" ;
            dp = new DatagramPacket(str.getBytes(),str.length(),InetAddress.getByName("localhost"),9000) ; // 所有的信息使用buf保存
            System.out.println("发送信息。") ;
            ds.send(dp);    // 发送信息出去
            ds.close() ;
        }
    };

    UDP 属于不可靠的连接协议,服务端发送的信息客户端未必接收的到,采用的是数据报的协议发送。

  • 相关阅读:
    python--txt文件处理
    Tomcat默认工具manager管理页面访问配置
    如何限制只有某些IP才能使用Tomcat Manager
    tomcat manager 禁止外网访问 只容许内网访问
    Tomcat 配置错误界面
    Mysql:Forcing close of thread xxx user: 'root' 的解决方法
    在Tomcat中配置404自定义错误页面详解
    白叔自创放大镜教程
    jQuery实现网页放大镜功能 转载
    转载 jQuery实现放大镜特效
  • 原文地址:https://www.cnblogs.com/oumyye/p/4271198.html
Copyright © 2011-2022 走看看