Servlet中web.xml 文件参数 contextparam 与 initparam的区别

<!--测试学习初始化参数 -->
  <servlet>
      <servlet-name>BeerParamTests</servlet-name>
      <servlet-class>org.ps.demo.TestInitParams</servlet-class>
      
      
      <init-param>
      <param-name>adminEmaail</param-name>
      <param-value>444733551@qq.com</param-value>
  </init-param>
  
  <init-param>
      <param-name>mainEmail</param-name>
      <param-value>pengshaomin@126.com</param-value>
  </init-param>

<context-param>
       <param-name>mainEmail</param-name>
      <param-value>pengshaomin@126.com</param-value>
</context-param>
  
  

1. init parameters 与 context parameters 的区别

    init param只为single servlet 服务 要写在<servlet></servlet>中   context param是整个web-app都可以调用的\

2.different API call(调用的API也不同)

   init param 使用 getServletConfig().getInitParameter("paramName"); 只能用于已配置过的servlet

   context param 使用 getServletContext().getInitParameter("paraName"); 用于整个webApp

3.

                               ServletContext对象在部署的时候由Container自动创建(只有一个)整个web app都能使用

                               ServletConfig对象每个Servlet都会创建一个

 

getServletContext() 相当于 this.getServletContext();

 

  

 

 

原文地址:https://www.cnblogs.com/pengshaomin/p/2677107.html