• Spring下获取项目根路径--good


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


    清单 6. WebAppRootListener 监听器配置

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

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


    比如以下的 log4j.properties 配置文件就通过 ${baobaotao.root} 设置了日志文件的地址:

    log4j.rootLogger=INFO,R 
    log4j.appender.R=org.apache.log4j.RollingFileAppender 
    log4j.appender.R.File=${baobaotao.root}/WEB-INF/logs/log4j.log ① 指定日志文件的地址
    log4j.appender.R.MaxFileSize=100KB 
    log4j.appender.R.MaxBackupIndex=1 
    log4j.appender.R.layout.ConversionPattern=%d %5p [%t] (%F:%L) - %m%n



    http://blog.sina.com.cn/s/blog_7003af290101j2cu.html

    来源:https://www.cnblogs.com/softidea/p/6100904.html

  • 相关阅读:
    亿级 Web 系统的容错性建设实践
    Spring 4支持的Java 8新特性一览
    Java多线程干货系列—(一)Java多线程基础
    Sublime Text 2 实用快捷键(Mac OS X)
    spring-事务管理
    100 个 Linux 常用命令大全
    这些年MAC下我常用的那些快捷键
    Java 容器源码分析之HashMap多线程并发问题分析
    MySQL索引结构--由 B-/B+树看
    Java 容器之 Connection栈队列及一些常用
  • 原文地址:https://www.cnblogs.com/kongxc/p/8575398.html
Copyright © 2020-2023  润新知