1、servlet规范是javaee规范中的一种。
2、servlet规范主要有哪些
1、制定了 动态资源文件 开发的步骤
2、指定Http服务器,调用动态资源文件的规则
3、指定Http服务器,管理动态资源文件实例对象的规则
3、servlet接口源自于servlet规范,这个接口在http服务器提供的jar下面。
4、Tomcat服务器下lib文件有一个servlet-api.jar存放Servlet接口(javax.servlet.Servlet)
5、Servlet规范中认为,Http服务器能调用的【动态资源文件】必须是一个Servlet接口的实现类。
public class Student {
//这不是动态资源类,Tomcat无权调用
}
import javax.servlet.Servlet;
public class Student implements Servlet {
//合法的动态资源文件,tomcat有权调用
}
6、抽象类作用: 降低接口实现类对接口实现过程难度,将接口中不需要使用抽象方法交给抽象类进行完成,这样接口实现类只需要对接口需要的方法进行重写。
7、tomcat调用servlet实现类规则
1、tomcat创建servlet接口实现类对象。
2、tomcat调用对象的servlet方法,处理用户发送的请求
8、为什么我们在写动态资源文件的时候是继承HttpServlet类而不是实现Servlet接口?
为了简化我们实现动态资源类的开发
在servlet接口中有五个方法其中有四个方法我们是用不到的
public void init(ServletConfig config) throws ServletException;
public ServletConfig getServletConfig();
public String getServletInfo();
public void destroy();
以上四个方法 我们一般是用不到的,所以在父类有一个空实现就行,如果我们真的需要用到了,我们只要重写以上方法就行。
public void service(ServletRequest req, ServletResponse res)throws ServletException, IOException;
我们用到的只是service方法
9、servlet实现类执行的步骤
1、tomcat服务器找到 动态资源文件类,并创建动态资源文件的实例对象。
2、实例对象自动调用service方法,这个service方法在父类HttpServlet类里面,判断请求使用的是get还是post方式。
3、如果请求是get方式,那么执行我们的doGet方法,反之执行doPost方法