Spring 获取web根目录 (Spring线程获取web目录/路径/根目录,普通类获取web目录) 拂晓风起

不使用Spring,怎样能在Listener启动的Thread中获取web目录,还真不完全确定。其实我觉得实际代码也很简单。
就是基于普通的listener,然后在listener中获取web目录并放到JRE全局变量中。

但使用Spring,就可以用一种比较优雅的方式来获取了。

在web.xml中的<web-app>节点内加入:

<context-param>
<param-name>webAppRootKey</param-name>
<param-value>tansungWeb.root</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.WebAppRootListener</listener-class>
</listener>

然后在普通的Java类中(不是action中),就可以通过System.getProperty("tansungWeb.root")获取了web根目录了。

然后再拼凑路径的时候,最好不要直接使用/或者\,最好使用File.separatorChar

参考:http://blog.csdn.net/hellostory/archive/2010/12/30/6106930.aspx

这样的做法,适用于Spring配置中启动的线程需要获取web目录。例如删除临时文件的线程,定时发送邮件的线程。

原文地址:https://www.cnblogs.com/kenkofox/p/2092576.html