1.Servlet接口一共有5个方法:
(1) void init(ServletConfig config);
(2) ServletConfig getServletConfig();
(3) void service(ServletRequest req, ServletResponse res)
(4) String getServletInfo();
(5) void destroy();
其中,(1)(3)(5)是比较经常使用到的。
2.在Tomcat容器第一次接收某个请求时,Tomcat容器会调用请求对应的Servlet实现类的构造方法、init方法。
为何有了构造方法,还要一个init方法呢?由于init方法能够传参ServletConfig,初始化Servlet。
构造方法、init方法,tomcat容器只执行一次。
service方法,则是每次收到请求时,Tomcat容器都调用一次。
destroy方法是在当前Servlet所在的Web应用从容器里卸载时调用,只执行一次。
3.load-on-startup参数
load-on-startup参数能够指定Servlet类被实例化的时机,若为负数,则表明Servlet第一次被访问时实例化。若为正数,表明当前Web项目被Servlet容器加载时实例化,正数数字越小,越先实例化,为0时第一个。若是多个Servlet的load-on-startup参数同样,也不会报错。
4.关于ServletMapping
同一个Servlet类,能够被映射到多个url上,可是一个url只能对应一个Servlet类。关于匹配的顺序问题,这个能够查资料。(第一是精准匹配,而后是最长路径匹配,再才是扩展匹配)
5.Servlet映射的url,也能够使用*通配符,可是只容许2种格式。
第一种:(*.扩展名)
第二种:(以正斜杠开头(/)而且以“ /* ”结尾)tomcat