您的位置:首页 > 理论基础 > 计算机网络

基于tcp服务器的多线程版-java-简单

2010-04-20 21:21 405 查看
/**
* TCPServerMutiThread
*/
import java.io.*;
import java.net.*;
public class TCPServerMutiThread implements Runnable {
Socket connectionSocket;
public TCPServerMutiThread (Socket connectionSocket){
this.connectionSocket= connectionSocket;
}
public void run() {
String clientSentence;
String capitalizedSentence;
try{
BufferedReader inFromClient =
new BufferedReader(
new InputStreamReader(connectionSocket.getInputStream()));
DataOutputStream outToClient=
new DataOutputStream(this.connectionSocket.getOutputStream());
clientSentence = inFromClient.readLine();
capitalizedSentence = clientSentence.toUpperCase()+'/n';
outToClient.writeBytes(capitalizedSentence);
}catch(Exception e){
System.out.println("ioexception:"+e);
}
}
public static void main(String[] args) throws Exception{
ServerSocket welcomeSocket=new ServerSocket(6789);
while(true){
Socket connectionSocket=welcomeSocket.accept();
new Thread(new TCPServerMutiThread (connectionSocket)).start();
}
}
}


import java.io.*;
import java.net.*;
public class TCPClient{
public static void main(String argv[]) throws Exception{
String sentence;
String modifiedSentence;
BufferedReader inFromUser=new BufferedReader(new InputStreamReader(System.in));
Socket clientSocket = new Socket("localhost",6789);
DataOutputStream outToServer=new DataOutputStream(clientSocket.getOutputStream());
BufferedReader inFromServer=new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
sentence=inFromUser.readLine();
outToServer.writeBytes(sentence+'/n');
modifiedSentence=inFromServer.readLine();
System.out.println("From server:"+modifiedSentence);
clientSocket.close();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: