Servlet是什么
1. Servlet是服务器端运行的一个程序,是一个被编译好的Java类。它不是框架等。
2. Web容器的启动,需要依赖Servlet。当web服务器开始执行时,servlet类就被初始化
3. 当用户通过浏览器访问的时候,会输入URI,这个时候,web服务器就通过Servlet来分发请求执行不同的内容。
HttpServlet
HttpServlet是一个抽象类,具体的实现自己需要的Servlet需要通过继承该类来实现 。
HttpServlet中主要的几个方法:
Servlet最终调用的是service方法,这个方法中会根据request的Method来判断具体是执行doGet还是doPost
HttpServlet最上层是继承Servlet这个接口类。Servlet这个接口类非常简单,只定义了5个方法。
package javax.servlet;
import java.io.IOException;
public interface Servlet {
//容器初始化
public void init(ServletConfig config) throws ServletException;
//获取配置信息
public ServletConfig getServletConfig();
//具体的service 请求分发
public void service(ServletRequest req, ServletResponse res)
throws ServletException, IOException;
//获取servlet信息
public String getServletInfo();
//容器销毁的时候
public void destroy();
}
Spring的DispatcherServlet
Spring主要通过DispatcherServlet实现了Servlet。DispatcherServlet最上层也是继承的是HttpServlet这个类。