多线程服务器.doc
上传人:yy****24 上传时间:2024-09-10 格式:DOC 页数:5 大小:14KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

多线程服务器.doc

多线程服务器.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Server.java:importjava.io.IOException;importjava.net.ServerSocket;publicclassServer{privateServerSocketserverSocket_3614;privatestaticStringpath_3614="c:/www";privatestaticfinalintSERVER_PORT_3614=200;intclientNum_3614=1;publicstaticvoidmain(String[]args){Serverserver_3614=newServer();server_3614.startServer();}privateServer(){try{serverSocket_3614=newServerSocket(SERVER_PORT_3614);}catch(Exceptione){System.err.println("无法启动服务器:"+e.getLocalizedMessage());}System.out.println("服务器已经运行在"+SERVER_PORT_3614+"端口");}publicvoidstartServer(){while(true){try{//建立多线程服务器ThreadedServerthreadedServer=newThreadedServer(serverSocket_3614.accept(),(clientNum_3614++),path_3614);System.out.println("线程ID"+threadedServer.getId()+"第"+threadedServer.clientNum_3614+++"个客户");threadedServer.start();try{ThreadedServer.sleep(5000);}catch(InterruptedExceptione){System.err.println(e);}}catch(IOExceptione){System.out.println(e);}}}}ThreadedServer.java:importjava.io.BufferedReader;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.PrintStream;importjava.io.PrintWriter;importjava.net.Socket;importjava.util.Date;importjava.util.StringTokenizer;publicclassThreadedServerextendsThreadimplementsRunnable{SocketclientSocket_3614;publicintclientNum_3614;Stringpath_3614="c:\\www";publicThreadedServer(Socketaccept,inti,Stringpath){this.clientSocket_3614=accept;this.clientNum_3614=i;this.path_3614=path;}publicvoidrun(){try{System.out.println("连接到服务器上的用户:"+clientSocket_3614);BufferedReaderin_3614=newBufferedReader(newInputStreamReader(clientSocket_3614.getInputStream()));//读取请求报文的第一行,获取方法和urlStringline_3614;if((line_3614=in_3614.readLine())!=null){System.out.println("客户端发送的请求报文:"+line_3614);