📄 tcpserver.java
字号:
import java.net.*;
import java.io.*;
public class tcpServer {
public static void main(String args[]) {
int port; //缺省为1500
ServerSocket server_socket;
BufferedReader input;
try {
port = Integer.parseInt(args[0]);
}catch (Exception e) {
System.out.println("port = 1500 (default)");
port = 1500;
}
try {
server_socket = new ServerSocket(port);
System.out.println("tcpServer waiting for client on port " +
server_socket.getLocalPort());
//不停的循环,用于接受客户端的请求
int count=0;
while(true) {
Socket socket = server_socket.accept();
count++;
new tcpServerThread(socket,count).start();
System.out.println("New client accepted " +socket.getInetAddress()+ ":" + socket.getPort());
}
}catch (Exception e) {
System.out.println(e);
}
}
}
class tcpServerThread extends Thread{
private Socket tcpSocket;
private int intNumber;
public tcpServerThread(Socket socket,int count){
tcpSocket=socket;
intNumber=count;
}
public void run(){
try{
BufferedReader inReader=new BufferedReader(new InputStreamReader(tcpSocket.getInputStream() ));
PrintWriter outWriter=new PrintWriter(tcpSocket.getOutputStream(),true);
outWriter.println("Welcome to tcp echo server! your account number is "+intNumber+".please enter EXIT if you want to exit");
String in="";
in=inReader.readLine();
while(!in.trim().equals("EXIT")){
outWriter.println("Echo ("+intNumber+"):"+in);
in=inReader.readLine();
}
outWriter.println("BYE client ("+intNumber+")");
tcpSocket.close();
System.out.println("client ("+intNumber+") closed");
}catch(Exception e){
System.out.println(e);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -