码迷,mamicode.com
首页 > 其他好文 > 详细

SSH整合log4j

时间:2014-09-28 21:25:25      阅读:363      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   io   os   使用   ar   strong   

Struts,Spring和Hibernate均支持Log4j作为其日志实现系统,因此如果能够合理地配置Log4j,便可以为SSH架构建立起完善的日志系统。

SSH框架中使用log4j的好处:

1. 动态的改变记录级别和策略,即修改log4j.properties,不需要重启Web应用,这需要在web.xml中设置一下。
2. 把log文件定在/WEB-INF/logs/ 而不需要绝对路径。
3. 可以把log4j.properties和其他properties一起放在/WEB-INF/ ,而不是Class-Path。

步骤:

1.导入所需的jar包。

2.创建"*.propertites"文件

3.在web.xml中添加配置,代码如下:

bubuko.com,布布扣
 1 <context-param>
 2     <param-name>log4jConfigLocation</param-name>
 3     <param-value>WEB-INF/log4j.properties</param-value>
 4 </context-param>
 5 <!-- 设置容器每60秒扫描log4j的配置文件 -->
 6 <context-param>
 7     <param-name>log4jRefreshInterval</param-name>
 8     <param-value>60000</param-value>
 9 </context-param>
10 <!-- 设置webAppRootKey参数,来导出可以在log4j.properties配置文件中使用的代表Web应用根目录的占位符 -->
11 <context-param>  
12   <param-name>webAppRootKey</param-name>  
13   <param-value>webApp.root</param-value>  
14 </context-param>
15 <!-- 需要添加spring-web.jar包,否则用发生错误信息-->
16 <listener>
17     <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
18 </listener>
View Code

注意:

1.log4j的配置文件如果放在src目录下且起名为“log4j.propertites”,那么在tomcat启动时就会被读取。原因是tomcat默认的日志系统也是log4j,在启动的时候会默认去找src下的log4j.propertites。

2.spring把web目录的路径压入到了webapp.root的系统变量(在web.xml设置),${webapp.root}表示工程目录,可以把它加入到输入路径的前面。如:log4j.appender.appender_demo.File = ${webapp.root}/WEB-INF/log/abc.log

3.Spring监听器加载放在了Spring日志监听器的前面, 导致Spring加载时(这个时候会使用log),但是这个时候spring log监听还没有被加载。所以应把Spring日志监听器放在Spring监听器之前。

基本log4j的Demo:

bubuko.com,布布扣
 1 # For JBoss: Avoid to setup Log4J outside $JBOSS_HOME/server/default/deploy/log4j.xml!  
 2 # For all other servers: Comment out the Log4J listener in web.xml to activate Log4J.  
 3 log4j.rootLogger=INFO, stdout, logfile  
 4 log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
 5 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
 6 log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n  
 7 log4j.appender.logfile=org.apache.log4j.RollingFileAppender  
 8 log4j.appender.logfile.File=${webApp.root}/WEB-INF/SSHIntegration.log  
 9 log4j.appender.logfile.MaxFileSize=512KB  
10 # Keep three backup files.  
11 log4j.appender.logfile.MaxBackupIndex=3  
12 # Pattern to output: date priority [category] - message  
13 log4j.appender.logfile.layout=org.apache.log4j.PatternLayout  
14 log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n  
15 ...  
View Code

 

SSH整合log4j

标签:style   blog   http   color   io   os   使用   ar   strong   

原文地址:http://www.cnblogs.com/dudadong/p/3998902.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!