TCP多线程
来源:互联网 发布:聂风入魔知乎 编辑:程序博客网 时间:2024/06/03 19:47
Client端口
package TCPThread;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.Socket;/* * 实现TCP客户端,连接到服务器 * 和服务器实现数据交换 * 实现TCP客户端程序的类 java.net.Socket * * 构造方法: * Socket(String host, int port) 传递服务器IP和端口号 * 注意:构造方法只要运行,就会和服务器进行连接,连接失败,抛出异常 * * OutputStream getOutputStream() 返回套接字的输出流 * 作用: 将数据输出,输出到服务器 * * InputStream getInputStream() 返回套接字的输入流 * 作用: 从服务器端读取数据 * * 客户端服务器数据交换,必须使用套接字对象Socket中的获取的IO流,自己new流,不行 */public class TCPClient {public static void main(String[] args)throws IOException {//创建Socket对象,连接服务器Socket socket = new Socket("127.0.0.1", 6000);//通过客户端的套接字对象Socket方法,获取字节输出流,将数据写向服务器OutputStream out = socket.getOutputStream();out.write("服务器OK".getBytes());//读取服务器发回的数据,使用socket套接字对象中的字节输入流InputStream in = socket.getInputStream();byte[] data = new byte[1024];int len = in.read(data);System.out.println(new String(data,0,len));socket.close();}}
线程端口TCP
package TCPThread;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.ServerSocket;import java.net.Socket;/* * 实现TCP服务器程序 * 表示服务器程序的类 java.net.ServerSocket * 构造方法: * ServerSocket(int port) 传递端口号 * * 很重要的事情: 必须要获得客户端的套接字对象Socket * Socket accept() */public class TCPServerRunable implements Runnable{private Socket socket;public TCPServerRunable(Socket socket) {this.socket = socket;}public void run(){try {InputStream in = socket.getInputStream();byte[] data = new byte[1024];int len = in.read(data);System.out.println(new String(data,0,len));//服务器向客户端回数据,字节输出流,通过客户端套接字对象获取字节输出流OutputStream out = socket.getOutputStream();out.write("收到,谢谢".getBytes());socket.close();}catch (Exception e) {// TODO: handle exception}}}
服务器端
package TCPThread;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;public class TCPServer {public static void main(String[] args)throws IOException {ServerSocket serverSocket = new ServerSocket(6000);while(true) {Socket socket = serverSocket.accept();new Thread(new TCPServerRunable(socket)).start();}}}
阅读全文
0 0
- TCP多线程
- TCP多线程
- TCP 多线程服务端
- 多线程tcp聊天模拟
- linux多线程+TCP服务器
- 多线程控制台TCP聊天工具
- 多线程TCP socket服务器
- TCP服务器(多线程)
- TCP中的多线程
- Java_SE10-多线程,TCP通信
- 多线程TCP服务器
- tcp多线程并发服务器
- 多线程操作(TCP协议)
- 多线程TCP文件上传
- TCP多线程服务器
- 多线程基础 、 TCP通信
- 多线程-TCP通信
- 多线程TCP通信
- 关于MongoDB中的索引查询(查询优化)
- bzoj1699 排队【稀疏表】
- Jcrop+ajaxFileUpload 图片裁切上传 oss(java web)
- 运用Recycleview经常出现的问题及需要注意的地方
- appium混合测试滑动
- TCP多线程
- vs2015中printf中文出现乱码问题
- Anaconda使用总结
- 深度学习中机器学习策略的运用 Projects-1
- 0913C++新手编程
- 并发编程(原子性、可见性、一致性)
- 杭电acm1026 Ignatius and the Princess I
- 安装ubuntu16.04全过程,脱坑,修复the system is running in low-graphics mode
- 关于服务器端SocketChannel一直读空内容死循环的原因及解决办法