📄 serverthread.java~10~
字号:
package chattingroom2;
import java.lang.Thread;
import java.io.*;
import java.net.*;
import chattingroom2.ServerChat;
import javax.swing.*;
/**
* <p>Title: ServerApplication for chattingroom</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class serverThread extends Thread{
private ServerChat serverchat=null;
private Socket socket=null;
private User user = null;
private String userIdentity;
static JTextArea jtextArea;
public serverThread(Socket socket, ServerChat serverchat) {
super("Chat Server");
this.socket = socket;
this.serverchat = serverchat;
userIdentity = socket.getInetAddress().getHostName();
user = new User(userIdentity);
}
public void run() {
PrintWriter out = null;
BufferedReader in = null;
String inputLine, outputLine;
try {
out = new PrintWriter(socket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out.println("you can communicate now!\n");
while ((inputLine = in.readLine()) != null) {
if (inputLine.equalsIgnoreCase("quit")) break;
outputLine = user.processInput(inputLine);
serverchat.send(outputLine);
}
}
catch (Exception ex) {
//ex.printStackTrace(System.err);
JOptionPane.showMessageDialog(null,"向客户端发送信息失败!","系统提示消息",1);
}
finally {
Close();
}
}
private void Close() {
try {
serverchat.removeClient(jtextArea,socket);
socket.close();
}
catch (Exception ex) {
ex.printStackTrace(System.err);
}
}
}
//JOptionPane.showMessageDialog(null,"向客户端发送信息失败!","系统提示消息",1);
/////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -