servlet相关类的简单总结(3.1.0版本)

从实习开始,就开始使用spring的框架进行开发,一直没琢磨过servlet,框架用的多了,底下的东西就越来越不了解了,今天简单总结一下servlet。先看下java本身提供的几个接口和类,下面是继承关系:

一、继承关系

在这里插入图片描述

二、servlet源码

public interface Servlet {
   

    public void init(ServletConfig config) throws ServletException;
    
    public ServletConfig getServletConfig();
    
    public void service(ServletRequest req, ServletResponse res)
	throws ServletException, IOException;
	
	public String getServletInfo();

    public void destroy();

方法解释:
从servlet源码可以看出接口内一共有六个方法,接下来看一下没个方法的作用:

  1. init方法是当servlet加载的时候由servlet容器调用的方法,参数为ServletConfig ,也就是servlet的配置。顺便解释一下,当我们的web程序启动的时候,当servlet容器(如:tomcat)接收到第一个客户端的请求的时候,就会调用这个init方法来初始化一个servlet实例,但是仅限于第一次,这个servlet实例一旦被创建,除非结束程序调用下面的destroy方法,否则这个servlet实例就会一直存在。以后当再有请求进入的时候,使用的还是当前这个servlet实例。
  2. getServletConfig方法是用来获取我们的servlet配置的方法,源码如下:
public interface ServletConfig {
   
   
    public String getServletName();

    public ServletContext getServletContext();

    public String getInitParameter(String name);

    public Enumeration<String> getInitParameterNames();
}
  1. 通过源码我们可以看到获取到的就是servlet的配置信息,包括我们配置servlet时指定的名字(下面配置文件中的中的值)。servlet上下文(servlet初始化实例后会把一些公共的信息放在servletContext中,也叫servlet作用域)。根据名字(下面配置文件中的)获取到我们在web.xml中配置的初始化参数(下面配置文件中的)以及最后的获取到所有初始化参数的名字(下面配置文件中的)。具体name和初始化参数是什么,我们举个例子:
<servlet>
		<servlet-name>JerseyServlet</servlet-name>
		<servlet-class>
			com.xxx.MatrixServlet
		</servlet-class>
		<init-param>  
          		<param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name>  
          	 	 <param-value>com.xxxx.I
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值