获取web.xml中的context-param和init-param定义的值

web.xml里面可以定义两种参数:<context-param> 和</init-param> 
(1)application范围内的参数,存放在servletcontext中,在web.xml中配置如下:

1 <context-param>
2 <param-name>context/param</param-name>
3 <param-value>avalible during application</param-value>
4 </context-param>

(2)servlet范围内的参数,只能在servlet的init()方法中取得,在web.xml中配置如下:

1 <servlet>
2 <servlet-name>MainServlet</servlet-name>
3 <servlet-class>com.wes.controller.MainServlet</servlet-class>
4 <init-param>
5 <param-name>param1</param-name>
6 <param-value>avalible in servlet init()</param-value>
7 </init-param>
8 <load-on-startup>0</load-on-startup>
9 </servlet>

在servlet中可以通过代码分别取用:

java 代码
package com.test;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;

public class TestServlet extends HttpServlet ...{

public TestServlet() ...{
super();
}
public void init() throws ServletException ...{
System.out.println("下面的两个参数param1是在servlet中存放的");
System.out.println(this.getInitParameter("param1"));
System.out.println("下面的参数是存放在servletcontext中的");
System.out.println(getServletContext().getInitParameter("context/param"));
}
}

第一种参数在servlet里面可以通过getServletContext().getInitParameter("context/param")得到
第二种参数只能在servlet的init()方法中通过this.getInitParameter("param1")取得

init-param属于一个servlet所有,context-param属于整个应用程序所有 ,不仅是在servlet中可以得到,jsp文件中也可以得到.

在jsp中config就相当于这里的servletContext,<%=config.getServletContext().getInitParameter("...") %>.
action中ServletActionContext.getServletContext().getInitParameter("...").

时间: 2024-08-11 12:08:29

获取web.xml中的context-param和init-param定义的值的相关文章

jsp 使用application.getInitParameter来获取web.xml中配置参数

jsp中9个内置对象之一application,它的数据对整个web应用都有效,application有一个重要的用途就是获取web.xm中的配置参数,这样可以提高代码的移植性.应用案例如下: 在web.xml中配置如下代码: <context-param> <param-name>driver</param-name> <param-value>com.mysql.jdbc.Driver</param-value> </context-p

servlet获取并存储web.xml中context-param参数

在web.xml中定义了context-param,一般不会随意改动,所以在监听器中做一次处理,容器启动时读取并存储在Properties中,方便以后取值. SysProperties 类用于存储 context 键值: SystemListener 监听器类,处理 context-param 参数. /** * 用于存储参数键值 */ public final class SysProperties { private static SysProperties instance; privat

传值:web.xml传递参数 即在Servlet中获取web.xml里的值

1 传值:web.xml传递参数 2 3 在web.xml中的Servlet里配置多个init-param 4 <servlet> 5 ... 6 <init-param> 7 <param-name>name</param-name> 8 <param-value>关羽</param-value> 9 </init-param> 10 <init-param> 11 <param-name>age

web.xml中在Servlet中获取context-param和init-param内的参数

引自:http://blog.csdn.net/yakson/article/details/9203231 web.xml里面可以定义两种参数:1.application范围内的参数,存放在servletContext中,在web.xml中配置如下: <context-param> <param-name>context/param</param-name> <param-value>avalible during application</para

web.xml 中的listener、filter、servlet加载及一些配置

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 Servlet

(转载)web.xml 中的listener、 filter、servlet 加载顺序及其详解

首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.  但不会因为 filter 写在 listener 的前面而会先加载 filter.  最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 ServletContext 提供键值对,即应用程序上下文信息.我们的 listener, filter 等在初始化时会用到这些上下文中的信息,那么 context-param 配置节是不是

服务器启动时Webapp的web.xml中配置的加载顺序

一 1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文. 3.容器将<context-param>转换为键值对,并交给servletContext. 4.容器创建<listener>中的类实例,创建监听器. 二  Load-on-startup Lo

web.xml中servlet初始化参数的设置

<context-param><param-name>param1</param-name><param-value>value1</param-value></context-param><context-param><param-name>param2</param-name><param-value>value2</param-value></context-pa

(转)web.xml 中的listener、 filter、servlet 加载顺序及其详解

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 Servlet