MyBatis——Log4J日志记录

Posted 小可爱的大笨蛋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyBatis——Log4J日志记录相关的知识,希望对你有一定的参考价值。

一. 何为Log4J?

Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

二. Log4J能做什么?

简单的说,Log4J可以向控制台,文件,GUI中输入一些日志信息。这很有助于MyBatis的SQL命令执行情况的观察。

三. 开始配置Log4J

1. 导入Log4J的Jar包
  • 下载完MyBatis后,在MyBatis的lib目录下会有一些日志文件的Jar包,使用的是log4j-1.2.17.jar这个Jar包就可以。
  • 将log4j-1.2.17.jar这个Jar包放在项目下的Content下的WEB-INF下 的lib目录下即可。
2. 配置Log4J的配置文件
  • 首先在项目的src下创建log4j.properties文件,该文件的目录固定,文件名固定
  • 在log4j.properties中进行log4j的配置。
    • 首先需要知道的是Log4J可以向控制台,文件等中输出日志信息。通过修改log4j.rootCategory来尽心Log4J的日志级别的输出以及选择输出的位置。
log4j.rootCategory=ERROR, CONSOLE
  • 通过log4j.logger来记录日志,可以详细的类,也可以只到包中,同时可以选择日志的输出级别。
    在下面演示的配置中,xyz.tulling.mapper是包名,而DEBUG是日志的输出级别。
log4j.logger.xyz.tulling.mapper = DEBUG
  • 最后则是一些输出显示的配置
# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%C %dYYYY-MM-dd hh:mm:ss %L %m%n
  • 整个配置信息如下
# Set root category priority to INFO and its only appender to CONSOLE.
log4j.rootCategory=ERROR, CONSOLE
#log4j.rootCategory=INFO, CONSOLE, LOGFILE

log4j.logger.xyz.tulling.mapper = DEBUG

# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%C %dYYYY-MM-dd hh:mm:ss %L %m%n

# LOGFILE is set to be a File appender using a PatternLayout.
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=axis.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
3. 在MyBatis中添加Log4J
  • 在MyBatis配置文件中添加Log4J。
    在MyBatis.xml 有一个被称为setting的标签,该标签可以对MyBatis进行一些设置。
    配置如下:
	<settings>
		<setting name="logImpl" value="Log4J"/>
	</settings>

注意Setting的顺序。

四. Log4J初体验

在配置好Log4J后,直接可以使用,不需要再去添加其他的代码。

日志解析:
  • 其中第一行是执行的SQL语句。
  • 第二行是执行的参数。没有填写参数,所以为无。
  • 第三行代表返回的信息数:查询了三条数据,所以tota为3。

以上是关于MyBatis——Log4J日志记录的主要内容,如果未能解决你的问题,请参考以下文章

Log4J 系列:log4j 整合SpringMVC+MyBatis 实现日志记录(01)

使用log4j记录日志

初始MyBatis

Y2 MyBatis

MyBatis3-配置使用log4j输出日志

mybatis的mapper接口加入Log4j日志