学习Java网络编程也有点久了,下面实现一个常见的小应用–多人聊天室
使用JAVA编程实现多人聊天室(需要用到多线程),服务器端包含如下功能:
(1) 若有新用户连接,则向已经连接到服务端的用户发送用户上线消息。
(2) 若有用户断开连接,则向在线用户发送用户下线消息。
(3) 若有用户发送消息,则向所有用户转发该消息。
(4) 当停止服务时,断开所有用户连接。
客户端代码:
package server;
import java.io.*;
import java.net.*;
import java.util.*;
public class ChatClient {
DataInputStream in = null;
DataOutputStream out = null;
Socket mysocket = null;
public static void main(String args[]) {
ChatClient chatClient = new ChatClient();
chatClient.init();
}
public void init() {
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);
try {
mysocket = new Socket("127.0.0.1", 8090);
Thread thread = new Thread(new SentToServer());
System.out.print("客户端");
in = new DataInputStream(mysocket.getInputStream());
out = new DataOutputStream(mysocket.getOutputStream());
thread.start();
String message=null;
while (true) {
try {
message= scanner.next();
out.w