TCP实现服务器与单客户端连接(多线程)
局域网内实现单客户端与服务器通信
客户端通过配置ip和端口号来连接服务器
客户端和服务器端各自具有发送和接收线程,可以实现一方持续发送
服务器端
package Net;import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;public class Server2 {public static void main(String[] args) throws IOException {ServerSocket serverSocket=new ServerSocket(9999);System.out.println("服务器已启动等待连接");Socket socket=serverSocket.accept();System.out.println("连接成功");In in=new In(socket,"张三");Out out=new Out(socket);in.start();out.start();}
}
客户端
package Net;import java.io.IOException;
import java.net.Socket;public class Client2 {public static void main(String[] args) throws IOException {Socket socket=new Socket("127.0.0.1",9999);if(socket.isConnected()){System.out.println("连接成功");}In in=new In(socket,"张修");Out out=new Out(socket);in.start();out.start();}
}
输入线程
package Net;import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;public class In extends Thread{Socket socket;String name;public In(Socket socket){this.socket=socket;}public In(Socket socket,String name){this.socket=socket;this.name=name;}@Overridepublic void run() {InputStream inputStream= null;try {inputStream = socket.getInputStream();} catch (IOException e) {e.printStackTrace();}DataInputStream din=new DataInputStream(inputStream);while(true){try {String ss=din.readUTF();System.out.println(name+":"+ss);} catch (IOException e) {e.printStackTrace();}}}
}
输出线程
package Net;import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;public class Out extends Thread{Socket socket;String name;public Out(Socket socket){this.socket=socket;}@Overridepublic void run() {OutputStream out = null;try {out = socket.getOutputStream();} catch (IOException e) {e.printStackTrace();}DataOutputStream dout = new DataOutputStream(out);Scanner scanner=new Scanner(System.in);while(true){String s= scanner.next();try {dout.writeUTF(s);} catch (IOException e) {e.printStackTrace();}}}
}
测试
开启服务器端
开启客户端
开始聊天
TCP实现服务器与单客户端连接(多线程)相关推荐
- C# Socket服务器及多客户端连接应用例程
服务端代码[控制台示例] static List<Socket> Sockets = new List<Socket>();static void Main(string[] ...
- STM32+LWIP服务器实现多客户端连接
用过正点原子LWIP服务器例程开发的朋友可能知道,例程的设计是只支持一个客户端连接的,但实际应用中往往需要用到多客户端连接.下面是在正点原子扩展例程 网络实验14 NETCONN_TCP 服务器(UC ...
- u8系统怎么连接服务器,怎么U8客户端连接服务器
怎么U8客户端连接服务器 内容精选 换一换 本章节为您介绍以下内容:准备弹性云服务器作为GDS服务器在使用GDS导入导出数据之前,需要准备一台或多台与GaussDB(DWS) 集群在相同VPC内的Li ...
- 金蝶系统客户端连接服务器,金蝶kis客户端连接主机服务器
金蝶kis客户端连接主机服务器 内容精选 换一换 SSH方式连接弹性云服务器,出现卡顿,需要较长时间才可以连接.服务端sshd服务开启UseDNS选项状态下,当客户端试图使用SSH连接服务器时,服务器 ...
- 发现TCP的一种错误----客户端连接失败(10055错误号)
在客户端连接7302TCP端口失败,关闭程序,启动sockettool也不行,出现错误号为 10055(发现队列满了或者空间不足).通过查网上资料,发现有两个方法:设置 ( TcpTimedWaitD ...
- 客户端怎么远程上服务器失败,远程客户端连接不上,与服务器那台,跨网络,怎么解决...
对应版本:用友U8.52 对应产品线:供应链 对应模块:销售管理模块 问题现象:1.销售发货单参照单生成不能增行(充许超计单发货)?新增行单价为0如何体现.2.到货单中合格数不可填写(不用GSP质量管 ...
- softether linux 客户端,SoftEther centos 服务器搭建 及 客户端连接
主博客地址https://blog.csdn.net/hanxinkong 开始安装 1 安装部署 服务端 cd /usr/local/ 打开要安装的路径,可以自定义 # wget https://g ...
- c语言接受socket发送尾部有乱码,C语言socket编程,服务器和一个客户端连接时,服务器能正常收到信息,2个以上就出现BUG了...
新手刚刚接触这个,建立的是控制台的32位程序. 程序思路服务器监听,每次连接,创建一个进程,全权处理该客户端的通信(不用考虑资源浪费问题). 服务器监听部分: while (true) { sockC ...
- WINCC做OPC UA服务器与第三方客户端连接测试
一.环境准备 服务器侧:WINCC 7.5SP1 +数据连通性软件包(Connectivity Pack)选件 客户端侧:Softing OPC UA Client软件 (下载地址:OPC UA-De ...
最新文章
- C# Random循环生成随机数重复问题解决方案
- pyqt5如何循环遍历控件名_利用Python的PyQt5编写GUI界面教学,QT5还是比较难的
- 实战SSM_O2O商铺_33【商品】商品编辑之Service层的实现
- Java快速排序的调试
- 连数据都读不懂,你凭什么说会数据分析?
- usb连接不上 艾德克斯电源_STM32F7 电源控制器(PWR)
- spring boot整合shiro继承redis_Springboot+Shiro+redis整合
- C++中STL-stack的用法
- 算法求解中的变量、数组与数据结构(STL 中的容器)
- petshop 中的 cache机制
- DG半离散格式的转化---基于matlab编写
- 4-7终极无敌DP乱秀
- ThoughtWorks 2019届校招算法、软开迷宫(maze)生成题目
- 远程访问及控制工具SSH
- 软件外包公司到底干啥的?要不要去外包公司?
- php pandoc,Pandoc 标记语言转化工具
- 【Github上有趣的项目】Deep-Flow-Guided-Video-Inpainting 从视频中抹去一个人(或消除马赛克)
- 小米10至尊纪念版和iphone11的区别 哪个好
- 洋钱罐借款「顶风作案」
- 字符串截取函数 substr
热门文章
- centos创建禁止登录用户
- Top 命令 如何查看linux系统中空闲内存/物理内存使用/剩余内存
- Spring Cloud Alibaba 之 服务治理:Nacos 如何实现微服务服务治理
- Nginx中server_name 参数详解
- Nginx 五大常见应用场景,Linux运维请收藏~
- 聊一聊-JAVA 泛型中的通配符 T,E,K,V,?
- Spring Boot实战:静态资源处理
- css中“[]”、“”“~”、“,”、“+”和“”详解
- Spring 整合 Junit
- 寿光一中2021年高考成绩查询,2021年寿光市高考状元名单资料,今年寿光市高考状元多少分...