您的位置:首页 > 移动开发 > WebAPP

Spring中的WebAppRootListener

2008-12-18 11:07 309 查看
 这个listner的作用就是监听web.xml中的配置para-name为webAppRootKey的值,比如我的web应用为tsts,那么我配置

这样一个

 

<context-param>

        <param-name>webAppRootKey</param-name>

        <param-value>tsts.root</param-value>

    </context-param>

,然后再配置这样一个监听器:

 

<listener>

        <listener-class> 

            org.springframework.web.util.WebAppRootListener

        </listener-class>

    </listener>

 

。这个监听器就会在web上下文初始化的时候,调用webUtil的对应方法,首先获取到param-name对应的param-value ,然后,根据传递进去的ServletContext对象得到web的物理路径:String root = servletContext.getRealPath("/");

 

接着把这个param-value作为key,root作为value放到system中System.setProperty(key, root);

 

然后再web中可以用 System.get.....就可以得到web的跟目录的物理路径了。

 

 

之前我的做法是用一个filter,在filter的init中调用String root = servletContext.getRealPath("/");,然后再去设置对应一个常量类文件的属性。做法差不多,但是spring的做法更可以借鉴!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring filter string web system