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

java-网络编程

package com.kun.tcp2;

import java.io.DataInputStream;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class ServerDemo2 {
public static void main(String[] args) throws Exception {
System.out.println(“服务端启动啦---------------------------”);
// 多发多收,服务端开发
// 1、创建服务端的ServerSocket对象,绑定端口号,监听客户端连接
ServerSocket sc = new ServerSocket(9999);

    // 2.调用accept方法,阻塞式等待客户端连接,一旦有客户端连接,会返回一个Socket对象,代表服务端管道Socket socket = sc.accept();// 3. 获取输入流,得到客户端发送来的数据InputStream is = socket.getInputStream();// 4. 把字节输入流包装成特殊数据输入流(和服务端对应)DataInputStream dis = new DataInputStream(is);// 5. 读取数据,必须和客户端一致//int id = dis.readInt();while (true) {// 读取数据String  msg = dis.readUTF();System.out.println("收到的客户端msg是:" + msg);// 6. 得到客户端ip和端口System.out.println("客户端ip:"+socket.getInetAddress().getHostAddress()+"客户端端口:"+socket.getPort());System.out.println("------------------------");}
}

}

http://www.dtcms.com/a/270452.html

相关文章:

  • Java中数组与链表的性能对比:查询与增删效率分析
  • RabbitMQ第二章(RocketMQ的五大工作模式)
  • 【Linux服务器】-安装ftp与sftp服务
  • 数据结构:数组:合并数组(Merging Arrays)
  • 20 道 Node.js 高频面试题
  • Codeforces Round 868 (Div. 2) D. Unique Palindromes(1900,构造)
  • 深入企业内部的MCP知识(四):FastMCP装饰器与类方法:正确结合面向对象与MCP组件的实践指南
  • 4.权重衰减(weight decay)
  • MySQL-索引
  • SQL135 每个6/7级用户活跃情况
  • ${project.basedir}延申出来的Maven内置的一些常用属性
  • Python入门Day5
  • 嵌入式面试八股文100题(二)
  • 分库分表之实战-sharding-JDBC水平分库+水平分表配置实战
  • 【深度学习入门 鱼书学习笔记(1)感知机】
  • 7月8日学习笔记——统计决策方法
  • 基于springboot的物流配货系统
  • Nuxt.js 静态生成中的跨域问题解决方案
  • C++学习笔记之数组、指针和字符串
  • 【PyTorch】PyTorch中torch.nn模块的激活函数
  • 项目Win系统下可正常获取Header字段,但是到了linux、docker部署后无法获取
  • python基础day08
  • linux wsl2 docker 镜像复用快速方法
  • 【读代码】GLM-4.1V-Thinking:开源多模态推理模型的创新实践
  • 基于模板设计模式开发优惠券推送功能以及对过期优惠卷进行定时清理
  • C++ 遍历可变参数的几种方法
  • 数据库表设计:图片存储与自定义数据类型的实战指南
  • C语言宏替换比较练习
  • 暑假算法日记第四天
  • 5.6.2、ZeroMQ源码分析