首页 > 其他 > 详细

Mybatis-10-日志

时间:2020-09-19 10:24:20      阅读:74      评论:0      收藏:0      [点我收藏+]
  • 日志工厂

    Mybatis内置了许多的日志工厂,可以在settings中设置

    <!--
    logImpl 指定 MyBatis 所用日志的具体实现,未指定时将自动查找
           SLF4J
           LOG4J(重点)
           LOG4J2
           JDK_LOGGING
           COMMONS_LOGGING
           STDOUT_LOGGING(重点)
           NO_LOGGING
    -->
  • STDOUT_LOGGING:标准日志输出

    • 在核心配置文件中配置标准日志输出

      <settings>
         <setting name="logImpl" value="STDOUT_LOGGING"/>
      </settings>
    • 控制台输出

      Logging initialized using ‘class org.apache.ibatis.logging.stdout.StdOutImpl‘ adapter.
      PooledDataSource forcefully closed/removed all connections.
      PooledDataSource forcefully closed/removed all connections.
      PooledDataSource forcefully closed/removed all connections.
      PooledDataSource forcefully closed/removed all connections.
      Opening JDBC Connection
      Created connection 418304857.
      Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@18eed359]
      ==>  Preparing: select * from mybatis.mybatistest
      ==> Parameters:
      <==    Columns: id, name, pwd
      <==        Row: 1, 洪梦霞, 123
      <==        Row: 2, 王禹, 222
      <==        Row: 3, 小李子, 008
      <==        Row: 4, 小叶子, 985
      <==      Total: 4
      User(id=1, name=洪梦霞, pwd=123)
      User(id=2, name=王禹, pwd=222)
      User(id=3, name=小李子, pwd=008)
      User(id=4, name=小叶子, pwd=985)
      Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@18eed359]
      Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@18eed359]
      Returned connection 418304857 to pool.
  • LOG4J

    • 什么是log4j?

      • 可以控制日志信息输送的目的地是控制台或文件或GUI组件

      • 可以控制每一条日志的输出格式

      • 通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程

      • 可以通过一个配置文件来灵活地进行配置

    • 导入依赖

      <dependency>
         <groupId>log4j</groupId>
         <artifactId>log4j</artifactId>
         <version>1.2.17</version>
      </dependency>
    • 编写log4j.properties配置文件

      #将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码
      log4j.rootLogger=DEBUG,console,file
      ?
      #控制台输出的相关设置
      log4j.appender.console = org.apache.log4j.ConsoleAppender
      log4j.appender.console.Target = System.out
      log4j.appender.console.Threshold=DEBUG
      log4j.appender.console.layout = org.apache.log4j.PatternLayout
      log4j.appender.console.layout.ConversionPattern=[%c]-%m%n
      ?
      #文件输出的相关设置
      log4j.appender.file = org.apache.log4j.RollingFileAppender
      log4j.appender.file.File=./log/hmx.log
      log4j.appender.file.MaxFileSize=10mb
      log4j.appender.file.Threshold=DEBUG
      log4j.appender.file.layout=org.apache.log4j.PatternLayout
      log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n
      ?
      #日志输出级别
      log4j.logger.org.mybatis=DEBUG
      log4j.logger.java.sql=DEBUG
      log4j.logger.java.sql.Statement=DEBUG
      log4j.logger.java.sql.ResultSet=DEBUG
      log4j.logger.java.sql.PreparedStatement=DEBUG
    • 配置log4j为日志的实现

      <settings>
         <setting name="logImpl" value="LOG4J"/>
      </settings>
    • log4j的使用

      • 1、在要使用log4j的类中导入apache下的Logger,并获得日志对象:

        import org.apache.log4j.Logger
        ?
        static Logger logger = Logger.getLogger(当前类名.class);
      • 2、Logger中的方法

        logger.info("info:进入了log4j!");
        logger.debug("debug:进入了log4j!");
        logger.error("error:进入了log4j!");
      • 3、也可以改变一些日志的设置,如生成日志文件的位置、日志格式中的时间、日期

Mybatis-10-日志

原文:https://www.cnblogs.com/LittleSkinny/p/13694799.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!