ServletConfig与ServletContext

区别:

整个Web应用只有一个ServletContext,在部署Web应用时,容器会建立ServletContext对象,这个上下文对Web应用中的每个Servlet和Jsp都有用

Web应用中各个Servlet都有自己的ServletConfig,它只对当前Servlet有效

关于初始化参数:

配置ServletContext(上下文)
<context-param>
    <!-- 参数名 -->
    <param-name>Name</param-name>
    <!-- 参数值 -->
    <param-value>java开发</param-value>
</context-param>
获取参数:
ServletContext  context =this.getServletContext();
String str = context.getInitParameter("Name");

ServletConfig参数设置:
 <servlet>
    <servlet-name>login</servlet-name>
    <servlet-class>login</servlet-class> 

    <init-param>
        <param-name>he</param-name>
        <param-value>he</param-value>
    </init-param>
  </servlet>
  <!-- 把init-param配置放在name和calss后面-->
获取参数:
ServletConfig  config =this.getServletConfig();
String str = config.getInitParameter("name");

注意:把init-param放在name和class后面原因是:
防止错误:cvc-complex-type.2.4.a: Invalid content was found starting with element ‘init-param’. One of ‘{“http://
java.sun.com/xml/ns/javaee”:description, “http://java.sun.com/xml/ns/javaee“:display-name, “http://
java.sun.com/xml/ns/javaee”:icon, “http://java.sun.com/xml/ns/javaee“:servlet-name}’ is expected.

猜你喜欢

转载自blog.csdn.net/root_zhb/article/details/52454445