JAVA学习-----网络编程 |
一、InetAddress:多个静态方法 |
- 1.getLocalHost:本机
- 2.getByName:根据域名DNS|IP地址-->IP
*两个成员方法
- 1.getHostAddress:返回地址
- 2.getHostName:返回计算机名
二、端口: |
三、URL: |
四、UDP |
UdpClient: 发送端
1、使用DatagramSocket指定端口 创建发送端
DatagramSocket client=new DatagramSocket(888);
2、准备数据 一定转成字节数组
byte[] datas=IOUtils.fileToByteArray("1.png");
3、封装成DatagramPacket包裹 ,需要制定目的地
DatagramPacket packet=new DatagramPacket(datas,0,datas.length,new InetSocketAddress("localhost",999) ) ;
4、发送包裹send(DatagramPacket p)
client.send(packet);
5、释放资源
client.close();
UdpServer:接收端
1、使用DatagramSocket指定端口 创建接收端
DatagramSocket server=new DatagramSocket(999);
2、准备容器 封装成DatagramPacket包裹
byte[] container=new byte[1024*60];
DatagramPacket packet=new DatagramPacket(container,0,container.length ) ;
3、阻塞式接收包裹receive(DatagramPacket p)
server.receive(packet);
4、分析数据byte[] getData();getLength()
byte[] datas=packet.getData();
int len=packet.getLength();
System.out.println(new String(datas,0,len));
5、释放资源
server.close();
**要实现同时收发,只要引入线程,即使用面向对象封装(属性,对象,构造器):implements Runnable+定义+构造器+重写run。
五、TCP |
1、建立连接:使用Socket创建客户端+服务的地址和端口
Socket client=new Socket("localhost",8888);
2、操作:输入输出流操作
DataOutputStream dos=new DataOutputStream(client.getOutputStream());
String data="hello";
dos.writeUTF(data);
dos.flush();
3、释放资源
dos.close();
client.close();
(2)创建服务器:
1、指定端口:使用ServerSocket创建服务器
ServerSocket server=new ServerSocket(8888);
2、阻塞式等待连接 accept
Socket client =server.accept();
3、操作:输入输出流操作
DataInputStream dis=new DataInputStream(client.getInputStream());
String data=dis.readUTF();
System.out.println(data);
4、释放资源
dis.close();
client.close();
server.close();
多个用户端,封装+线程=完美
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· 趁着过年的时候手搓了一个低代码框架
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· 乌龟冬眠箱湿度监控系统和AI辅助建议功能的实现