服务器端:
/**
* 内网通
* @author mrchai
*/
public class SQServer {
/**对外提供服务端口号*/
private int port;
/**用于记录所有产生Socket对象*/
public volatile static List<Socket> clients = new ArrayList<>();
public SQServer(int port) {
super();
this.port = port;
}
public void startServer() {
try {
//创建服务
ServerSocket server = new ServerSocket(port);
Tools.tips("服务已开启,等待连接...");
while(true) {
//监听客户端连接
Socket s = server.accept();
//将获取的Socket存储到集合中
clients.add(s);
Tools.tips("客户端已连接:"+Tools.ip(s));
//启动聊天服务线程
new TalkingServer(s).start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
//启动服务
new SQServer(8090).startServer();
}
}
/**
* 消息接收转发线程
* @author mrchai
*
*/
public class MsgServer ext