Spring获取Web应用根目录的方法

Spring 在 org.springframework.web.util 包中提供了几个特殊用途的 Servlet 监听器,正确地使用它们可以完成一些特定需求的功能。比如某些第三方工具支持通过 ${key} 的方式引用系统参数(即可以通过 System.getProperty() 获取的属性),WebAppRootListener 可以将 Web 应用根目录添加到系统参数中,对应的属性名可以通过名为“webAppRootKey”的 Servlet 上下文参数指定,默认为“webapp.root”。下面是该监听器的具体的配置:

in web.xml

<strong>…
 <context-param> 
    <param-name>webAppRootKey</param-name> 
    <param-value>project.root</param-value> ① Web 应用根目录以该属性名添加到系统参数中
 </context-param> 
…
② 负责将 Web 应用根目录以 webAppRootKey 上下文参数指定的属性名添加到系统参数中
 <listener> 
    <listener-class> 
    org.springframework.web.util.WebAppRootListener 
    </listener-class> 
 </listener> 
…
</strong>

这样,您就可以在程序中通过 System.getProperty("project.root") 获取 Web 应用的根目录了。不过更常见的使用场景是在第三方工具的配置文件中通过 ${project.root} 引用 Web 应用的根目录。


转自:http://lwg2001s.iteye.com/blog/1859458

Be Born:http://www.ibm.com/developerworks/cn/java/j-lo-spring-utils1/

你可能感兴趣的:(spring)