局域网内实现单客户端与服务器通信

客户端通过配置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实现服务器与单客户端连接(多线程)相关推荐

  1. C# Socket服务器及多客户端连接应用例程

    服务端代码[控制台示例] static List<Socket> Sockets = new List<Socket>();static void Main(string[] ...

  2. STM32+LWIP服务器实现多客户端连接

    用过正点原子LWIP服务器例程开发的朋友可能知道,例程的设计是只支持一个客户端连接的,但实际应用中往往需要用到多客户端连接.下面是在正点原子扩展例程 网络实验14 NETCONN_TCP 服务器(UC ...

  3. u8系统怎么连接服务器,怎么U8客户端连接服务器

    怎么U8客户端连接服务器 内容精选 换一换 本章节为您介绍以下内容:准备弹性云服务器作为GDS服务器在使用GDS导入导出数据之前,需要准备一台或多台与GaussDB(DWS) 集群在相同VPC内的Li ...

  4. 金蝶系统客户端连接服务器,金蝶kis客户端连接主机服务器

    金蝶kis客户端连接主机服务器 内容精选 换一换 SSH方式连接弹性云服务器,出现卡顿,需要较长时间才可以连接.服务端sshd服务开启UseDNS选项状态下,当客户端试图使用SSH连接服务器时,服务器 ...

  5. 发现TCP的一种错误----客户端连接失败(10055错误号)

    在客户端连接7302TCP端口失败,关闭程序,启动sockettool也不行,出现错误号为 10055(发现队列满了或者空间不足).通过查网上资料,发现有两个方法:设置 ( TcpTimedWaitD ...

  6. 客户端怎么远程上服务器失败,远程客户端连接不上,与服务器那台,跨网络,怎么解决...

    对应版本:用友U8.52 对应产品线:供应链 对应模块:销售管理模块 问题现象:1.销售发货单参照单生成不能增行(充许超计单发货)?新增行单价为0如何体现.2.到货单中合格数不可填写(不用GSP质量管 ...

  7. softether linux 客户端,SoftEther centos 服务器搭建 及 客户端连接

    主博客地址https://blog.csdn.net/hanxinkong 开始安装 1 安装部署 服务端 cd /usr/local/ 打开要安装的路径,可以自定义 # wget https://g ...

  8. c语言接受socket发送尾部有乱码,C语言socket编程,服务器和一个客户端连接时,服务器能正常收到信息,2个以上就出现BUG了...

    新手刚刚接触这个,建立的是控制台的32位程序. 程序思路服务器监听,每次连接,创建一个进程,全权处理该客户端的通信(不用考虑资源浪费问题). 服务器监听部分: while (true) { sockC ...

  9. WINCC做OPC UA服务器与第三方客户端连接测试

    一.环境准备 服务器侧:WINCC 7.5SP1 +数据连通性软件包(Connectivity Pack)选件 客户端侧:Softing OPC UA Client软件 (下载地址:OPC UA-De ...

最新文章

  1. C# Random循环生成随机数重复问题解决方案
  2. pyqt5如何循环遍历控件名_利用Python的PyQt5编写GUI界面教学,QT5还是比较难的
  3. 实战SSM_O2O商铺_33【商品】商品编辑之Service层的实现
  4. Java快速排序的调试
  5. 连数据都读不懂,你凭什么说会数据分析?
  6. usb连接不上 艾德克斯电源_STM32F7 电源控制器(PWR)
  7. spring boot整合shiro继承redis_Springboot+Shiro+redis整合
  8. C++中STL-stack的用法
  9. 算法求解中的变量、数组与数据结构(STL 中的容器)
  10. petshop 中的 cache机制
  11. DG半离散格式的转化---基于matlab编写
  12. 4-7终极无敌DP乱秀
  13. ThoughtWorks 2019届校招算法、软开迷宫(maze)生成题目
  14. 远程访问及控制工具SSH
  15. 软件外包公司到底干啥的?要不要去外包公司?
  16. php pandoc,Pandoc 标记语言转化工具
  17. 【Github上有趣的项目】Deep-Flow-Guided-Video-Inpainting 从视频中抹去一个人(或消除马赛克)
  18. 小米10至尊纪念版和iphone11的区别 哪个好
  19. 洋钱罐借款「顶风作案」
  20. 字符串截取函数 substr

热门文章

  1. centos创建禁止登录用户
  2. Top 命令 如何查看linux系统中空闲内存/物理内存使用/剩余内存
  3. Spring Cloud Alibaba 之 服务治理:Nacos 如何实现微服务服务治理
  4. Nginx中server_name 参数详解
  5. Nginx 五大常见应用场景,Linux运维请收藏~
  6. 聊一聊-JAVA 泛型中的通配符 T,E,K,V,?
  7. Spring Boot实战:静态资源处理
  8. css中“[]”、“”“~”、“,”、“+”和“”详解
  9. Spring 整合 Junit
  10. 寿光一中2021年高考成绩查询,2021年寿光市高考状元名单资料,今年寿光市高考状元多少分...