`
hain
  • 浏览: 449102 次
  • 来自: ...
社区版块
存档分类
最新评论

context-param和init-param区别

阅读更多


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

<context-param>
           
<param-name>context/param</param-name>
           
<param-value>avalible during application</param-value>
  
</context-param>

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

<servlet>
    
<servlet-name>MainServlet</servlet-name>
    
<servlet-class>com.wes.controller.MainServlet</servlet-class>
    
<init-param>
       
<param-name>param1</param-name>
       
<param-value>avalible in servlet init()</param-value>
    
</init-param>
    
<load-on-startup>0</load-on-startup>
</servlet>

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

package com.wes.controller;

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

public class MainServlet extends HttpServlet ...{

    
public MainServlet() ...{
        
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")取得

理解能力有些问题,才弄明白他们之间的关系。

分享到:
评论
9 楼 edwardjuice 2014-07-08  
淺顯易懂
謝謝
8 楼 yjb8119010 2012-09-28  
    
7 楼 cppmule 2011-07-14  
3楼说的对。在servlet中都可以。不一定非要在 init()方法中
6 楼 yaoxiaowei0909 2011-03-09  
不错~~
5 楼 zzyround 2010-06-13  
学习了,谢谢,阐述的非常到位。
4 楼 lu7kang 2010-05-07  
正解 总结得很不错的
3 楼 longtop 2009-03-20  
作者总结的不错,不过补充一下:
“第二种参数只能在servlet的init()方法中通过this.getInitParameter("param1")取得”
应该是,在servlet中都可以通过getInitParameter("param1")取得,未必要限制在init()中,虽然初衷是为了初始化
2 楼 yuyaobing 2009-03-13  
小弟遇到这个问题 ,描述的不错 。呵呵 谢谢 
1 楼 helenxiao520 2008-01-26  
    

相关推荐

    spring配置中<context-param> 和<init-param>的 区别

    &lt;context-param&gt; 和&lt;init-param&gt;的 区别代码 博文链接:https://xhy0422.iteye.com/blog/46319

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

    本篇文章是对web.xml中在Servlet中获取context-param和init-param内的参数进行了详细的分析介绍,需要的朋友参考下

    <context-param>与<init-param>的区别与作用

    NULL 博文链接:https://wy649898543.iteye.com/blog/1833263

    修改后的 fckedit.jar

    web.xml 中配置 完善了对上传图片的验证 &lt;context-param&gt; &lt;param-name&gt;FCKAllowedExtensionsImage&lt;/param-name&gt; &lt;param-value&gt;jpg|gif|jpeg|png|bmp &lt;/param-value&gt; &lt;/context-param&gt; ...

    DOS命令使用方法(超全).

    DOS命令使用方法(超全). ... &lt;!-- 下边这是加入spring配置 --&gt; &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation&lt;/... &lt;init-param&gt; &lt;param-name&gt;encoding&lt;/param-name&gt; &lt;param-value&gt;UTF-8&lt;/param-value&gt;

    CAS客户端JAR包版本3.3.3

    &lt;context-param&gt; &lt;param-name&gt;casServerLogoutUrl&lt;/param-name&gt; &lt;param-value&gt;http://192.168.156.120:8080/cas/logout&lt;/param-value&gt;&lt;!--server cas 地址--&gt; &lt;/context-param&gt; &lt;!-- 用于单点退出,该...

    Spring MVC 框架应用实例

    &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt; &lt;param-value&gt; /WEB-INF/database.xml /WEB-INF/applicationContext.xml &lt;/param-value&gt; &lt;/context-param&gt; &lt;listener-class&gt; ...

    生活轨迹SSH服务端

    &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt; &lt;!-- &lt;param-value&gt;/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml&lt;/param-value&gt; --&gt; &lt;param-value&gt;classpath:...

    springmvcwebjspWeb-Return.zip

    spring后台会在过滤器里会自动拼接urlParent和currentUrlDecode参数 jsp页面编码时: 1,在父页面跳转打开子页面的URL,需要带上参数: urlParent=${currentUrlDecode} 2,子页面返回按钮的js代码统一使用: ...

    轻量级java web MVC框架

    &lt;context-param&gt; &lt;param-name&gt;ScanPackage&lt;/param-name&gt; &lt;param-value&gt;com.mvc.controller&lt;/param-value&gt; &lt;/context-param&gt; 容器在启动时候,会将com.mvc.controller下所有映射路径绑定处理方法上,假如在扫描包...

    SpringMVC-Mybatis-Shiro-redis-master 权限集成缓存中实例

    &lt;/context-param&gt; 4.项目Maven打包问题。 打包的时候,不同版本的 Eclipse 还有IDEA 会有打包打不进去Mapper.xml 文件,这个时候要加如下代码(群里同学提供的)。 &lt;directory&gt;src/main/java **/*....

    JSF文件上传

    &lt;context-param&gt; &lt;param-name&gt;javax.faces.STATE_SAVING_METHOD&lt;/param-name&gt; &lt;param-value&gt;client&lt;/param-value&gt; &lt;/context-param&gt; &lt;!-- Context Listener creates and sets the application handler --&gt...

    TOMCAT快速上手

    Tomcat 中配置一个Web应用 1 conf/server.xml 在&lt;host&gt;&lt;/host&gt;标记...&lt;init-param&gt; &lt;param-name&gt;listings&lt;/param-name&gt; &lt;param-value&gt;false&lt;/param-value&gt; &lt;/init-param&gt; 将false改成true即可,开发调试阶段很有用。

    基于EXT SSI的简单树实现

    &lt;context-param&gt; &lt;description&gt;spring初始配置 &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt; &lt;param-value&gt;classpath:conf/spring/application.xml&lt;/param-value&gt; &lt;/context-param&gt; &lt;!-- 配置struts...

    基于MyEclipse搭建maven+springmvc整合图文教程(含源码0

    &lt;/context-param&gt; &lt;!-- Spring的log4j监听器 --&gt; &lt;listener-class&gt;org.springframework.web.util.Log4jConfigListener&lt;/listener-class&gt; &lt;!-- 字符集 过滤器 --&gt; &lt;filter-name&gt;...

    Spring.html

    --全局初始化参数--&gt; &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt; &lt;param-value&gt;classpath:applicationContext.xml&lt;/param-value&gt; &lt;/context-param&gt; 4.在Servlet中使用...

    视频播放各种格式

    * @param context */ public VDVideoView(Context context) { super(context); VDApplication.getInstance().setContext(context); mContext = context; setBackgroundColor(0x0); ...

Global site tag (gtag.js) - Google Analytics