JavaWeb基础—Servlet重要对象

时间:2021-09-29 22:52:07

一、ServletConfig对象

  当servlet配置了初始化参数后(<init-param> <param-name> <param-value>),web容器在创建servlet实例对象时,会自动将这些初始化参数封装到ServletConfig对象中,并在调用servlet的init()方法时,将ServletConfig对象传递给servlet。进而,我们通过ServletConfig对象就可以得到当前servlet的初始化参数信息。

  具体获取的操作是重写init()方法,将容器传递的ServletConfig对象拿到,再使用getInitParameter()方法进行操作即可。

二、ServletContext对象

  servlet上下文

  ServletContext(重要!):对象名习惯取application(一个项目仅一个)
  可以给多个servlet传递数据(把项目中servlet串在一起,servlet本身不见面,类似今天网购),高内聚,低耦合

  特性:与天地同寿(Tomcat启动时就创建)
  ServletConfig对象中维护了ServletContext对象的引用,通过ServletConfig的getServletContext()得到servletContext对象(当然可以在servlet中使用this.getServeltContext()得到对象)

主要应用:

  Servlet之间共享数据(域对象的功能)

  获取web.xml中配置context-param的参数,即获取Web应用的初始化参数

  读取配置文件:this.getServletContext().getResourceAsStream(path);(Properties文件的读取详见另一篇博客)

         使用类加载器读取配置文件,context.getClassLoader();loader.getResourceAsStream();