Log4j 是 Apache 的一个开放源代码项目,通过使用 Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI 组件,甚至是套接口服务器、NT 的事件记录器、UNIX Syslog 守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
这篇文章主要介绍了 SSM 整合中的 Log4j 的配置详情, 小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
在网上搜索了很多的 log 的配置方法,当然结果很多,但是没有一个是我想要的。没办法只能自己去试了。只说如何在项目中引入 log4j 来显示日志的输出。当然配置文件是少不了的。
配置 log4j.properties
在 SSM 整合的项目中会有文件夹 src/main/resources
所有的资源型文件都要放在这个 resource 下面(个人习惯,也可以放在其让地方)
- ### Log4j配置 ###
- ### 与Spring结合需要在web.xml中指定此文件位置,并添加监听器 ###
- #定义log4j的输出级别和输出目的地(目的地可以自定义名称,和后面的对应)
- #[ level ] , appenderName1 , appenderName2
- log4j.rootLogger=DEBUG,console,file
- #-----------------------------------#
- #1 定义日志输出目的地为控制台
- log4j.appender.console = org.apache.log4j.ConsoleAppender
- log4j.appender.console.Target = System.out
- log4j.appender.console.Threshold=DEBUG
- ####可以灵活地指定日志输出格式,下面一行是指定具体的格式 ###
- #%c: 输出日志信息所属的类目,通常就是所在类的全名
- #%m: 输出代码中指定的消息,产生的日志具体信息
- #%n: 输出一个回车换行符,Windows平台为"/r/n",Unix平台为"/n"输出日志信息换行
- log4j.appender.console.layout = org.apache.log4j.PatternLayout
- log4j.appender.console.layout.ConversionPattern=[%c]-%m%n
- #-----------------------------------#
- #2 文件大小到达指定尺寸的时候产生一个新的文件
- log4j.appender.file = org.apache.log4j.RollingFileAppender
- #日志文件输出目录
- log4j.appender.file.File=log/tibet.log
- #定义文件最大大小
- log4j.appender.file.MaxFileSize=10mb
- ###输出日志信息###
- #最低级别
- log4j.appender.file.Threshold=ERROR
- log4j.appender.file.layout=org.apache.log4j.PatternLayout
- log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n
- #4 mybatis 显示SQL语句部分
- log4j.logger.org.mybatis=DEBUG
- #log4j.logger.cn.tibet.cas.dao=DEBUG
- #log4j.logger.org.mybatis.common.jdbc.SimpleDataSource=DEBUG#
- #log4j.logger.org.mybatis.common.jdbc.ScriptRunner=DEBUG#
- #log4j.logger.org.mybatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG#
- #log4j.logger.java.sql.Connection=DEBUG
- log4j.logger.java.sql=DEBUG
- log4j.logger.java.sql.Statement=DEBUG
- log4j.logger.java.sql.ResultSet=DEBUG
- log4j.logger.java.sql.PreparedStatement=DEBUG
至于日志里面的具体内容解释,网上有很多。我就不一一诉说了。
接着就是映入 maven 依赖
引入 maven 依赖在 pom.xml 中
- <!-- https://mvnrepository.com/artifact/log4j/log4j -->
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.16</version>
- </dependency>
在 web.xml 中添加如下:
Log4jConfigListener 监听器,用来监听日志的启动:
- <listener>
- <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
- </listener>
- log4j文件的加载路径:不过我后来又尝试了一下,好像<context-param>不需要进行配置也可以运行log4j。
- <!-- log4j日志输出 -->
- <context-param>
- <param-name>log4jConfigLocation</param-name>
- <param-value>classpath:log4j.properties</param-value>
- </context-param>
即可
以上配置都完成之后,就可以运行项目进行尝试了。
日志运行的结果
备注
在我的项目目录中出现的 Spring Elements 是因为我安装了 Spring tool 插件,很不错的一个插件。尤其是在写配置文件的时候有用,网上有很多资料。
参照: /article/17/1108/353724.html
来源: http://www.phperz.com/article/17/1223/353754.html