packagecom.czhappy.hello.socket;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.OutputStream;importjava.io.PrintWriter;importjava.io.UnsupportedEncodingException;importjava.net.Socket;/*** 服务器线程处理类
*@authorAdministrator
**/
public class ServerThread extendsThread{
Socket socket= null;publicServerThread(Socket socket){this.socket =socket;
}public voidrun() {
InputStream is= null;
InputStreamReader isr= null;
BufferedReader br= null;
OutputStream os= null;
PrintWriter pw= null;try{//获取字节输入流
is =socket.getInputStream();//将字节输入流转化为字符输入流
isr = new InputStreamReader(is, "utf-8");//为字符输入流添加缓冲
br = newBufferedReader(isr);
String data=br.readLine();while(data!=null){
System.out.println("我是服务器,客户端说:"+data);
data=br.readLine();
}//关闭输入流
socket.shutdownInput();//获取输出流,响应客户端请求
os =socket.getOutputStream();
pw= newPrintWriter(os);
pw.write("欢迎您!");
pw.flush();
}catch(UnsupportedEncodingException e) {//TODO Auto-generated catch block
e.printStackTrace();
}catch(IOException e) {//TODO Auto-generated catch block
e.printStackTrace();
}finally{try{if(pw!=null){
pw.close();
}if(os!=null){
os.close();
}if(br!=null){
br.close();
}if(isr!=null){
isr.close();
}if(is!=null){
is.close();
}if(socket!=null){
socket.close();
}
}catch(IOException e) {
e.printStackTrace();
}
}
}
}