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

时间:2025-01-02 12:04:20

引自:http://blog.****.net/yakson/article/details/9203231

web.xml里面可以定义两种参数:
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中可以通过代码分别取用:

  1. package com.qisentech.controller;
  2. import javax.servlet.ServletException;
  3. import javax.servlet.http.HttpServlet;
  4. public class MainServlet extends HttpServlet {
  5. public MainServlet() {
  6. super();
  7. }
  8. public void init() throws ServletException {
  9. System.out.println(this.getInitParameter("param1"));  
  10.           System.out.println(getServletContext().getInitParameter("context/param"));
  11. }
  12. }

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