⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 threadedserver.java

📁 用java语言编写的一个http协议的socket实现
💻 JAVA
字号:
package webserver;

import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * 多线程的服务器,此服务器一次可以处理多个客户请求;
 * @author Crise.Lee
 * @version 1.0
 */
public class ThreadedServer
{
	static String fileroot;
	ServerSocket server;
	int port;
	
	/**
	 * 多线程服务器的构造函数,完成接受客户的请求并且调用响应的操作处理客户的请求
	 */
	public ThreadedServer()
	{
		System.out.println("*************************************************");
		System.out.println("******       Starting the web server       ******");
		System.out.println("*************************************************");
		ServerSocket ssocket = null;
		try {
			ssocket = new ServerSocket(8888);
			for(;;)
			{
				System.out.println("*************************************************");
				System.out.println("*****        The web server reading         *****");
				System.out.println("*****        Waiting a request.....         *****");
				System.out.println("*************************************************");
				
				Socket accept=ssocket.accept();
				new Thread(new Handler(accept,fileroot)).start();
				
			}
		} catch (IOException e1) {
			System.err.println("错误原因:服务器初始化错误。");
			//e1.printStackTrace();
		}finally
		{
			try {                            //关闭服务器套接字
				ssocket.close();
			} catch (IOException e) {
				System.out.println("错误原因:服务器套接字关闭出错。");
				//e.printStackTrace();
			}
		}
	}
	
	/**
	 * 入口函数;
	 * @param args 出入的参数列表
	 */
	public static void main(String[] args)
	{
		if(args.length!=0)
			fileroot=args[0];
		else
			fileroot="D:\\";
		new ThreadedServer();
	}
	

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -