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

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目录。例如删除临时文件的线程,定时发送邮件的线程。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 批处理/命令行合并js,递归合并子目录js文件

    用户1258909
  • [C#]log4net写SQLServer数据库日志的配置方法

    用户1258909
  • asp.net页面事件执行顺序(转+原创补充) Button1_Click处理返回数据前还有其他处理!!!例如onPreLoad

    用户1258909
  • PHP 配合JSmin库进行压缩前端JS代码进行合并访问,减少前端访问请求。

    Eller
  • 新型前端开发工程师的三个境界 后端开发工程师如何快速转前端

    初入软件开发这一行时,当时还没有前后端分离这个概念,所有的开发工程师既能写html,也能写后台服务,随着技术的发展,前后端分离成为趋势,目前团队不少人能熟悉的写...

    用户1177380
  • node之npm使用

    在cmd中,使用npm init可以初始化一个package.json文件,用回答问题的方式生成一个新的package.json文件。

    十月梦想
  • Vue.js学习

    最近在看Vue.js相关的东西,比如说vue-router、vuex,还有基于Vue.js的前端UI框架Element-UI和iview

    ccf19881030
  • AndroidStudio不自动添加新创建的文件到VCS

    从远程仓库下载了一份源码,版本控制是用的SVN。但发现了一个问题,修改和删除文件时,版本管理都有记录。但是如果我新建一个文件时,却发现没有自动关联到VCS,也不...

    Frank909
  • 如何在Ubuntu 18.04上测试与分子的可靠角色

    Ansible中的单元测试是确保角色按预期运行的关键。通过允许您指定针对不同环境测试角色的方案,Molecule使此过程更容易。使用Ansible,Molecu...

    朝朝
  • [Keras深度学习浅尝]实战五·使用DNN自编码器实现聚类操作数据降维

    小宋是呢

扫码关注云+社区

领取腾讯云代金券