Mybatis日志工厂

Mybatis日志工厂

      • 设置核心配置文件
            • 1、STDOUT_LOGGING(标准日志输出)
            • 2、LOG4J

设置核心配置文件

<settings>
    <setting name="logImpl" value="STDOUT_LOGGING"/>
settings>

1、STDOUT_LOGGING(标准日志输出)
  • 注意
    • 1、value="STDOUT_LOGGING"之间不能有空格
    • 2、name="logImpl"中间的是大写i
Opening JDBC Connection
Created connection 2134991632.
Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@7f416310]
==>  Preparing: select * from user where id=?
==> Parameters: 3(Integer)
<==    Columns: id, name, pwd
<==        Row: 3, 王五, 123456
<==      Total: 1
User{id=3, name='王五', pwd='123456'}
Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@7f416310]
Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@7f416310]
Returned connection 2134991632 to pool.
2、LOG4J
  • 1、导入LOG4J的jar包

<dependency>
    <groupId>log4jgroupId>
    <artifactId>log4jartifactId>
    <version>1.2.17version>
dependency>
  • 2、配置log4j.properties文件
`### 设置###
log4j.rootLogger = debug,stdout,D,E

### 输出信息到控制抬 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{
     yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

### 输出DEBUG 级别以上的日志到=E://logs/error.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ./logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG 
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{
     yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

### 输出ERROR 级别以上的日志到=E://logs/error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =./logs/error.log 
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR 
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{
     yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n`
  • 3、配置log4j为日志的实现
<settings>
    <setting name="logImpl" value="LOG4J"/>
settings>

Logging initialized using 'class org.apache.ibatis.logging.log4j.Log4jImpl' adapter.
Logging initialized using 'class org.apache.ibatis.logging.stdout.StdOutImpl' adapter.
Opening JDBC Connection
Created connection 1783047508.
Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@6a472554]
==>  Preparing: select * from user where id=?
==> Parameters: 3(Integer)
<==    Columns: id, name, pwd
<==        Row: 3, 王五, 123456
<==      Total: 1
User{id=3, name='王五', pwd='123456'}
Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@6a472554]
Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@6a472554]
Returned connection 1783047508 to pool.
  • 4、log4j的简单实用
//1、通过指定的名字获得记录器,如果必要的话,则为这个名字创建一个新的记录器。Name一般取本类的名字,比如:

static Logger logger = Logger.getLogger ( ServerWithLog4j.class.getName () )
//2.插入记录信息(格式化日志信息)
 
Logger.debug ( Object message ) ;  
Logger.info ( Object message ) ;  
Logger.warn ( Object message ) ;  
Logger.error ( Object message ) ;
  • 5、日志级别
    每个Logger都被了一个日志级别(log level),用来控制日志信息的输出。日志级别从高到低分为:
    A:off 最高等级,用于关闭所有日志记录。
    B:fatal 指出每个严重的错误事件将会导致应用程序的退出。
    C:error 指出虽然发生错误事件,但仍然不影响系统的继续运行。
    D:warn 表明会出现潜在的错误情形。
    E:info 一般和在粗粒度级别上,强调应用程序的运行全程。
    F:debug 一般用于细粒度级别上,对调试应用程序非常有帮助。
    G:all 最低等级,用于打开所有日志记录。

你可能感兴趣的:(log4j,mybatis)