当前位置: 首页 > news >正文

卡片式网站环球资源外贸平台免费

卡片式网站,环球资源外贸平台免费,开发小程序大概多少钱,政府信息网站建设管理文章目录 UDP简介一发一收客户端:服务端: 多发多收实现多开客户端:服务端 UDP简介 UDP(User Datagram Protocol) DatagramSocket 用于创建客户端、服务端DatagramSocket() :创建客户端的Socket对象,系统随…

文章目录

      • UDP简介
      • 一发一收
        • 客户端:
        • 服务端:
      • 多发多收
        • 实现多开
        • 客户端:
        • 服务端

UDP简介

UDP(User Datagram Protocol)请添加图片描述

DatagramSocket 用于创建客户端、服务端DatagramSocket() :创建客户端的Socket对象,系统随机分配一个端口
DatagramSocket(int port) : 创建服务端的Socket对象,指定端口号DatagramPacket(byte buf[], int length,InetAddress address, int port) 
创建发出去的数据包参数解释:
byte buf[]:字节数组,用于接收数据
int length :数据的长度
InetAddress address 网址对象
int port 端口号DatagramPacket(byte buf[], int length)
创建用来接收的数据包

方法:

send(DatagramPacket p) //发数据
receive(DatagramPacket p) //接收数据

一发一收

要先启动服务端再启动客户端。

客户端:
public class Client {public static void main(String[] args) throws Exception {//创建客户端对象DatagramSocket socket = new DatagramSocket();/*  public DatagramPacket(byte buf[], int length,InetAddress address, int port) */byte[] bytes = "客户端发送给了一个数据包".getBytes();DatagramPacket packet = new DatagramPacket(bytes,bytes.length, InetAddress.getLocalHost(),6666);socket.send(packet);System.out.println("客户端数据发送完毕");socket.close();//记得关闭,不然占用资源。}
}
服务端:
public class Server {public static void main(String[] args) throws Exception {DatagramSocket socket = new DatagramSocket(6666);System.out.println("服务端启动");//创建一个数据包对象,用于接受数据byte[] buffer = new byte[1024 * 64];//数据包最大为64kDatagramPacket packet = new DatagramPacket(buffer,buffer.length);socket.receive(packet);int len = packet.getLength();String rs = new String(buffer,0,len);System.out.println(rs);System.out.println("客户端的IP:"+packet.getAddress().getHostAddress());System.out.println("客户端的端口:"+packet.getPort());socket.close();}
}

多发多收

相比一收一发改进的地方:

  • 实现多次发送自定义信息
  • 输入stop 时候退出
实现多开

在这里插入图片描述
在这里插入图片描述

客户端:

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;public class Client {public static void main(String[] args) throws Exception {//创建客户端对象DatagramSocket socket = new DatagramSocket();/*  public DatagramPacket(byte buf[], int length,InetAddress address, int port) */Scanner sc = new Scanner(System.in);while (true) {System.out.println("请输入数据:");String msg = sc.nextLine();if (msg.equals("stop")) {break;}byte[] bytes = msg.getBytes();DatagramPacket packet = new DatagramPacket(bytes,bytes.length, InetAddress.getLocalHost(),6666);socket.send(packet);}System.out.println("感谢使用!!!");socket.close();}
}
服务端

服务端一般是不关闭的。

import java.net.DatagramPacket;
import java.net.DatagramSocket;public class Server {public static void main(String[] args) throws Exception {DatagramSocket socket = new DatagramSocket(6666);System.out.println("服务端启动");while (true) {//创建一个数据包对象,用于接受数据byte[] buffer = new byte[1024 * 64];DatagramPacket packet = new DatagramPacket(buffer,buffer.length);socket.receive(packet);int len = packet.getLength();String rs = new String(buffer,0,len);System.out.println(rs);System.out.println("客户端的IP:"+packet.getAddress().getHostAddress());System.out.println("客户端的端口:"+packet.getPort());}
//        socket.close();}
}
http://www.hkea.cn/news/527885/

相关文章:

  • 凡科网电脑版怎么做网站百度知道官网手机版
  • 贵卅省住房和城乡建设厅网站周口seo推广
  • 搭建flv视频网站seo工具查询
  • 企业展示网站 数据库设计模板自助建站
  • 房地产设计师上海seo网络优化
  • wordpress迁移打不开百度seo泛解析代发排名
  • 网站兼容性测试怎么做微信营销软件群发
  • wordpress如何设置内容页seo营销优化
  • 高端大气的网站制作南宁百度seo软件
  • 沙井营销型网站建设成人培训机构
  • 网站没有被百度收录搜索引擎排名优化公司
  • 手机网站转换小程序晋江怎么交换友情链接
  • 专业做网站的公司疫情放开最新消息今天
  • 不用写代码做网站软件长沙优化网站
  • o2o商城网站建设方案广告策划案优秀案例
  • 日照做网站的那家做的好百度网页链接
  • 建设云个人证件查询系统上海seo培训
  • 网站流量提供商杭州seo排名
  • 做装饰工程的在什么网站投标自建站
  • 地球人--一家只做信誉的网站帮忙推广的平台
  • 网站建设外包协议天津网站排名提升
  • 邯郸教育行业网站建设百度推广代理商查询
  • 政府网站有哪些网站seo最新优化方法
  • 做广告牌子seo外链工具
  • 微信页面设计网站兰州网络推广技术
  • 上门做网站搜狗站长工具
  • wordpress用户邮箱验证码百度seo搜索引擎优化培训
  • 360极速怎么屏蔽网站新闻热点大事件
  • 购物app开发价格表站长工具seo排名
  • 微餐饮网站建设营销型网站建设方案