简单socket通信
来源:互联网 发布:桌面日历软件 编辑:程序博客网 时间:2024/06/16 13:07
描述:启动服务器端,客户端连接服务器端成功之后,服务器端发送“你好,我是服务器,欢迎你的到来!”,客户端发送“你好,我是客户端!”
package com.java.socket;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;public class Server {public static void main(String[] args) {try {System.out.println("服务器准备启动..., 等待客户端的连接...");ServerSocket ss = new ServerSocket(2002);//while(true){Socket socket = ss.accept();System.out.println(socket);Thread thread = new Thread(new MyRunnable(socket));thread.start();//}} catch (IOException e) {e.printStackTrace();}}}
package com.java.socket;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.Socket;public class MyRunnable implements Runnable {private Socket socket;public MyRunnable(Socket socket) {this.socket = socket;}@Overridepublic void run() {InputStream inStream = null;OutputStream outStream = null;int count = 0;try{inStream = socket.getInputStream();outStream = socket.getOutputStream();count = inStream.available();byte[] strByte = new byte[count];inStream.read(strByte);System.out.println(new String(strByte));String outStr = "你好,我是服务器,欢迎你的到来!";outStream.write(outStr.getBytes());outStream.flush();}catch(IOException e){e.printStackTrace();}finally{try {if(inStream != null){inStream.close();}if(outStream != null){outStream.close();}if(socket != null){socket.close();}} catch (IOException e) {e.printStackTrace();}}}}
package com.java.socket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.Socket;import java.net.UnknownHostException;public class Client {public static void main(String[] args) {try {Socket socket = new Socket("127.0.0.1", 2002);socket.setKeepAlive(true);socket.setSoTimeout(30*1000);InputStream inStream = socket.getInputStream();OutputStream outStream = socket.getOutputStream();String outStr = "你好,我是客户端!";outStream.write(outStr.getBytes());outStream.flush();socket.shutdownOutput();InputStreamReader isr = new InputStreamReader(inStream);BufferedReader br = new BufferedReader(isr);String str = null;while((str = br.readLine()) != null){System.out.println(str);}inStream.close();outStream.close();socket.close();} catch (UnknownHostException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}
测试结果:
server端:
服务器准备启动..., 等待客户端的连接...
Socket[addr=/127.0.0.1,port=55204,localport=2002]
你好,我是客户端!
client端:
你好,我是服务器,欢迎你的到来!
0 0
- 简单实现Socket通信
- 简单的SOCKET通信
- c++ 简单SOCKET 通信
- socket通信简单例子
- Socket简单通信
- 简单的Socket通信
- Qt Socket简单通信
- Qt Socket简单通信
- socket通信简单示例
- Socket通信简单例子
- 简单Socket通信
- Socket实现简单通信
- 简单socket通信示例
- Socket 简单通信代码
- 简单的Socket通信
- 简单的Socket通信
- java socket 简单通信
- 简单Socket通信
- python机器学习实战4:Logistic回归
- 如何入门NLP
- 编译Linux-4.9.11内核时遇到:“error : openssl/bio.h :No such file or folder”
- Codeforces Round #408 (Div. 2) E
- 记录一下python中遇到的问题
- 简单socket通信
- JAVA集合框架——图
- pg_buffercache
- mybatis的优缺点
- TensorFlow入门很好的教程:你好,TensorFlow!
- CentOS7下搭建redis集群
- 工作安排(待编辑)
- 关于胶合逻辑
- 图片的展示清晰度问题研究