您的位置:首页 > 运维架构

log4j.properties 从jar中抽身

2016-04-25 18:59 239 查看
log4j.properties 理所应当在jar/war中

- 类似于log4j配置文件,存在的依旧有JPA的配置文件,都是集成于JAR/WAR中间,其中的设计肯定有一定的道理,虽然到目前为止,笔者依旧没有办法深刻体会其中的哲学,但是其中带来的不变还是有的,如果想变更(实际中还是比较常见的情况),使用的方法无外乎有两种
1. 变更源码中的设置,重新编译生成jar包
2. 通过解压命令(例如:unzip),将现有的jar/war看作普通文件解压,变更,再压缩(zip),其中在再次压缩的时候可能注意是不是和原来的文件结构完全相同
注意: 对于war来讲,当然其deploy过程就是文件解压的过程,在deploy之后依旧可以变更设定,重新启动服务器即可;笔者在此,并不反对.但是大多数情况,向别人提供完整war时,就不得不使用以上的方法


通过classpath 动态变更log4j配置

通过classpath来指定log4j其实还算是比较便捷的,以下有两种方式进行文件的指定
1. 将log4j.properties 在启动jar/war之前将其指定到系统的classpath中
2. 通过java命令运行jar时,将配置文件增加到java -classpath中


当作普通的配置文件进行管理

1. 系统不是由一个或两个配置文件组成,由多个配置文件构成时,就需要对所有的配置文件进行管理
2. 许多框架都提供了类似于log4j的PropertyConfigurator.configure()方法进行指定配置文件加载的方式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  log4j 设计