客户端和服务端约定接口字段:
输入描述:
字段名 |
长度 |
备注 |
dealCode |
10 |
|
amCode |
32 |
|
输出描述:
字段名 |
长度 |
备注 |
funCode |
4 |
|
flag |
2 |
|
errorMsg |
100 |
|
Socket服务端
Controller:接受到客户端请求后调用GetSocket.startSocket();
import java.net.ServerSocket;
import java.net.Socket;
public class GetSocket {
service
public static void startSocket() throws Exception {
// 监听本地的9999端口
ServerSocket serversocket = new ServerSocket(9999);
System.out.println("服务端启动......");
while (true) {
//等待客户端的连接请求,此方法会阻塞
Socket socket = serversocket.accept();
System.out.println("连接客户端......");
// 需要多线程,开启一个新的线程,为某个客户端提供服务
new Thread(new MyService(socket, service)).start();
}
}
}
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class MyService implements Runnable {
// 组合设计模式
private Socket socket;
private service;
public MyService(Socket socket, Service service) {
this.socket = socket;
this.service = service;
}
public void run() {
//接受的参数