Servlet初始化参数(ServletConfig)与Servlet上下文初始化参数(ServletContext)区别

首先,这两个都叫做初始化参数,只不过servlet初始化参数才在DD配置中包含“init”一词。

上下文初始化参数:

  元素中,但不在具体的元素中。比如:
   
         
               foo
               bar
         

       
     

Servlet初始化参数:

      在每个特定的Servlet的元素中,比如:
   
          BeerParamTests
          TestInitParams
         
                foo
                bar
         

   

在Servlet代码中调用初始化参数:

上下文初始化参数调用: getServletContext().getInitParameter("foo");   对Web应用的所有servlet和JSP都可用。
Servlet初始化参数调用:getServletConfig().getInitParameter("foo");   只对配置了的相应servlet可用。




注意:每个servlet有一个ServletConfig,每个Web应用有一个ServletContext.要把初始化参数认为是部署时常量,可用在运行时得到这些初始化参数,但不能设置初始化参数,根本没有setInitParameter().如果修改XML来改变一个初始化参数的值,只有当Web应用重新部署时Web应用其他部分才会看到,因为servlet只会初始化一次,在初始化时会为它提供ServletConfig和ServletContext。






你可能感兴趣的:(java)