tomcat.java

来自「JAVA的一些基础教程」· Java 代码 · 共 55 行

JAVA
55
字号
import java.net.*;
import java.io.*;
import java.util.*;

interface Servlet{
	public String getContent();
}

class HelloServlet implements Servlet{
	 public String getContent(){
		return "Hello world";
  	}
}

class DateServlet implements Servlet{
	public String getContent(){
		return "now time is " + new Date();
	}
}

class TomCat {
	public static void main(String arg[]) throws Exception{
                  	ServerSocket server = new ServerSocket(80);
		System.out.println("Tomcat已经运行,等待用户的访问");
	                  Socket client;
                  	while(true){
			client = server.accept();
			System.out.println("获取了一个用户的连接");
			PrintStream ps = new PrintStream(client.getOutputStream());
			BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream()));
			String command = br.readLine();
			//解析用户输入的内容
			StringTokenizer st = new StringTokenizer(command);
			st.nextToken();
			String servlet = st.nextToken();	//获取用户要访问的servlet的名字
			servlet = servlet.substring(1);
			ps.println("<html>");
			ps.println("	<head>");
			ps.println("<title>how are you</title>");
			ps.println("</head>");
			ps.println("<body>");
			try{
			//装载Servlet类,产生对象,并调用其动态内容方法
				Servlet a = (Servlet) Class.forName(servlet).newInstance(); ;
				ps.println(a.getContent());
			}catch(Exception e){
				ps.println(" you servlet not find!");
		}
		ps.println("</body>");
		ps.println("</html>");
		ps.close();
                  }
          }
}

⌨️ 快捷键说明

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