JAVA TCP通信服务端与客户端实例
来源:互联网 发布:测试交换机端口好坏 编辑:程序博客网 时间:2024/05/05 06:48
服务端代码
public class ServerTest {private static int TIME = 0;public static void main(String[] args) { System.out.println("即将开始监听"); try { final ServerSocket serverSocket =new ServerSocket(8123); System.out.println("server start..."); while (Boolean.TRUE) { System.out.println("循环监听"); Socket socket=serverSocket.accept(); InputStream inputStream=socket.getInputStream();// DataInputStream dis = new DataInputStream(inputStream); while (dis.available() <= 4) { if(TIME>9) { break; } Thread.sleep(1000); System.out.println("available: " + dis.available()); TIME++; } byte[] data = new byte[dis.available()]; dis.read(data); Packet packet; packet = PacketFactory.createPacket(data); //采用工厂模式生成包对象 packet.unserialize(data); // 将数据装换成对象的属性 packet.process();// 具体业务操作 } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }}
}
客户端代码
public class ClientTest {public static void main(String[] args) { Socket socket; for(int i=0;i<8;i++) { try { socket = new Socket("127.0.0.1",8123); OutputStream outputStream=socket.getOutputStream(); DataOutputStream dos = new DataOutputStream(outputStream);// LoginPacket login = new LoginPacket();// login.setUserName("huangsheng----"+i);// login.setPassword("123"); MessagePacket msg = new MessagePacket(); msg.setMfriendName("huangsheng"); msg.setmContent("nizaiganshenmea"); dos.write(msg.serialize()); // 将消息包转换成指定格式的数据 dos.flush(); socket.shutdownOutput();// dos.close(); outputStream.close(); socket.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
}
消息格式如下
服务端采用工厂模式。不需要知道用户传进来的是什么包,直接create就行。
完整代码http://download.csdn.net/download/qq_28380057/9779897
1 0
- JAVA TCP通信服务端与客户端实例
- java客户端与服务端通信Tcp/Ip
- binder通信实例之java客户端与java服务端
- Java socket客户端与服务端同步通信实例
- binder通信实例之java客户端与c++服务端
- MINA客户端与服务端通信实例
- java Socket客户端服务端通信小实例
- tcp客户端与服务端之间的通信实例(参考了孙鑫老师的书籍)
- C语言实现服务端和客户端进行TCP通信实例
- C语言实现服务端和客户端进行TCP通信实例
- JAVA与C#的TCP通信——JAVA客户端,C#线程池服务端
- python TCP客户端服务端通信
- 基于tcp协议的socket客户端与服务端的通信-java
- TCP服务端与客户端
- 基于tcp的socket通信(单个客户端与服务端)
- 客户端与服务端的TCP通信实现(Qt)
- Java简单实现TCP服务端和客户端通信
- java客户端与服务端同步实例
- jQuery Validate 验证框架详解
- 使用Opencv添加一个进度条来控制视频播放
- PHP实现各种经典算法 ||
- Linux下常见的~/.bashrc、/etc/profile、/etc/ld.so.config小科普以及caffe编译遇到的相关问题解决
- HashMap源码分析(中)--Java篇
- JAVA TCP通信服务端与客户端实例
- AccessibilityService重新整理:微信自动抢红包、微信自动向附近的人打招呼
- Party All the Time(三分)
- iOS 面向对象编程的三大特征
- 输入输出流
- Is Subsequence
- HashMap源码分析(下)--Android篇
- 洛谷 1508——Likecloud-吃、吃、吃(多维动态规划)
- 工厂方法模式