服务器

udpserver.java

package server;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress; public class udpserver { final static int port = 7217; public static void main(String[] args) throws Exception {
System.out.println("服务器!"); DatagramSocket socket = null; socket = new DatagramSocket(port); DatagramPacket packet = new DatagramPacket(new byte[2048], 2048); socket.receive(packet); byte[] rData = packet.getData();//客户端发过来的文字 InetAddress rAddress = packet.getAddress();//地址 int rPort = packet.getPort();//端口 System.out.println("内容:"+new String(rData));
System.out.println("IP地址:"+ rAddress.getHostAddress());
System.out.println("端口号:"+ rPort); socket.close();
} }

客户端

udpclient.java

package client;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress; public class udpclient {
final static int port = 7217; final static String ip = "127.0.0.1"; final static String sendStr = "你好,我是客户端!"; public static void main(String[] args) throws Exception {
System.out.println("客户端!"); DatagramSocket socket = null; socket = new DatagramSocket(); DatagramPacket packet = new DatagramPacket(
sendStr.getBytes(),//字符串的字节数组
sendStr.getBytes().length,//字节数组的长度
InetAddress.getByName(ip),//IP
port);//端口 socket.send(packet);//发包 socket.close();
} }

运行效果

服务器输出:

服务器!
内容:你好,我是客户端!
IP地址:127.0.0.1
端口号:50656

客户端输出:

客户端!

视频讲解

视频讲解页面

【Java】UDP套接字编程的更多相关文章

  1. TCP和UDP套接字编程 (java实现)

    在了解网络编程之前,我们先了解一下什么叫套接字 套接字即指同一台主机内应用层和运输层之间的接口 由于这个套接字是建立在网络上建立网络应用的可编程接口 因此也将套接字称为应用程序和网络之间的应用程序编程 ...

  2. 【Python网络编程】利用Python进行TCP、UDP套接字编程

    之前实现了Java版本的TCP和UDP套接字编程的例子,于是决定结合Python的学习做一个Python版本的套接字编程实验. 流程如下: 1.一台客户机从其标准输入(键盘)读入一行字符,并通过其套接 ...

  3. JavaTCP和UDP套接字编程

    在我们刚开始入门Java后端的时候可能你会觉得有点复杂,包含了很多杂七杂八的知识,例如文件上传下载,监听器,JDBC,请求重定向,请求转发等等(当然也没有很多),但是我们自己真正的去开发一个小型网站( ...

  4. 探索UDP套接字编程

    UDP和TCP处于同一层网络模型中,也就是运输层,基于二者之上的应用有很多,常见的基于TCP的有HTTP.Telnet等,基于UDP有DNS.NFS.SNMP等.UDP是无连接,不可靠的数据协议服务, ...

  5. 【转】 探索UDP套接字编程

    UDP和TCP处于同一层网络模型中,也就是运输层,基于二者之上的应用有很多,常见的基于TCP的有HTTP.Telnet等,基于UDP有DNS.NFS.SNMP等.UDP是无连接,不可靠的数据协议服务, ...

  6. 计算机网络实验 UDP套接字编程

    这是个傻瓜式操作教程 西科大计算机网络实验 UDP套接字编程 我用自己的Ubuntu16.04来举例,实验室的是虚拟机,差不多 只针对第三个题目,修改服务器来通过响应客户端发送的GetTime并发送给 ...

  7. UDP套接字编程 返回系统时间

    计算机网络实验 简单UDP套接字编程 这是学校老师自己改进了一点的题目.我预习了好久才搞明白,同学来问的时候,一大堆简单问题实在是不想回答...所以,这时候我觉得博客是个好东西! 我的任务是做客户端和 ...

  8. 【Unix网络编程】chapter8基本UDP套接字编程

    chapter8基本UDP套接字编程 8.1 概述 典型的UDP客户端/服务端的函数调用 8.2 recvfrom和sendto函数 #include <sys/socket.h> ssi ...

  9. 《Unix 网络编程》08:基本UDP套接字编程

    基本UDP套接字编程 系列文章导航:<Unix 网络编程>笔记 UDP 概述 流程图 recvfrom 和 sendto #include <sys/socket.h> ssi ...

  10. java基础----->TCP和UDP套接字编程

    这里简单的总结一下TCP和UDP编程的写法,另外涉及到HttpUrlConnection的用法 . TCP套接字 一.项目的流程如下说明: .客户输入一行字符,通过其套接字发送到服务器. .服务器从其 ...

随机推荐

  1. CSS JS 自适应菜单

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. .NET 数据拷贝方案选择

    应用中我们经常使用到数据的复制,在.NET中有多种方式可以实现复制数据或对象.选择哪种方式通.是浅拷贝还是深拷贝,取决于对象的复杂性.数据量以及具体需求场景. 1. MemberwiseClone拷贝 ...

  3. 数组中的常见异常: 1. 数组角标越界的异常:ArrayIndexOutOfBoundsExcetion 2. 空指针异常:NullPointerException

    数组中的常见异常:  1. 数组角标越界的异常:ArrayIndexOutOfBoundsExcetion   2. 空指针异常:NullPointerException package com.ch ...

  4. HiJobQueue:一个简单的线程安全任务队列

    HiJobQueue:一个简单的线程安全任务队列 概述 HiJobQueue 是一个线程安全的任务队列,用于在多线程环境中管理和执行异步任务.它的设计参考了 Cobalt 项目中的 JobQueue, ...

  5. 「CF 123E」Maze

    传送门 题意澄清 对于 dfs 遍历时,在某一个点进入子树的顺序并不是按输入顺序,而是假定随机选择未进入过的子树 (这纠结了我好久) . 破题思路 首先可以明确这题不能推一个 \(O(1)\) 的式子 ...

  6. 第一届启航杯网络安全大赛部分wp

    第一届启航杯 WEB Easy include <?php error_reporting(0); //flag in flag.php $file=$_GET['fil e']; if(iss ...

  7. lagrange 插值做题记录

    插值在OI中的应用 - Grice - 博客园 lagrange 插值笔记 - 洛谷专栏 P5850 calc加强版 - 洛谷 Problem - F - Codeforces 2025oifc202 ...

  8. Oracle trunc的使用

    在生产环境中我们经常会用到只取年月日或者时间处理的场景,大多数人用的都是to_char(string,'yyyy-mm-dd')或者to_date(string,'yyyy-mm-dd')来处理,不说 ...

  9. 使用Hyper-V或者VM虚拟机安装部署Ubantu

    下载Ubantu iso文件 Server版下载 桌面版下载 我使用的是22.04.3版本,目前22.04最新版是22.04.5版本 22.04下载 一.Hyper-V方式 1.安装Hyper-V 参 ...

  10. Nessus 扫描Web服务

    Nessus 扫描Web服务 1.点击 New Scan,选择 Web Application Tests 2.填写扫描名称和扫描目标 3.点击 Discovery ,选择 Scan Type 为全端 ...