当前位置 博文首页 > 文章内容

    Mybatis-10-日志

    作者: 栏目:未分类 时间:2020-09-19 10:00:21

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    • 日志工厂

      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、也可以改变一些日志的设置,如生成日志文件的位置、日志格式中的时间、日期