mybatis日志工厂

前言:

如果一个数据库操作,出现异常,我们需要排错,日志就是最好的助手

官方给我们提供了logImpl:指定 MyBatis 所用日志的具体实现,未指定时将自动查找。

默认工厂:

在配置文件里添加:

java 复制代码
<!--配置日志-->
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>

若要使用非标准日志需要先导包,例如Log4j

导入包:

java 复制代码
    <dependencies>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
    </dependencies>

log4j

先在pom.xml文件里导入依赖:

java 复制代码
    <dependencies>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
    </dependencies>

编写log4j配置文件:

java 复制代码
#将等级为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/kuang.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

配置:

XML 复制代码
<!--配置日志-->
    <settings>
<!--        标准日志工厂实现-->
<!--        <setting name="logImpl" value="STDOUT_LOGGING"/>-->
<!--        log4j日志-->
        <setting name="logImpl" value="LOG4J"/>
    </settings>

1.在要使用的地方导入包:import org.apache.log4j.Logger;

2.日志对象,参数为当前类的class

java 复制代码
 static Logger logger=Logger.getLogger(UserDaoTest.class);
  

进行测试:

之后会自动生成日志文件

相关推荐
zmsofts3 小时前
java面试必问13:MyBatis 一级缓存、二级缓存:从原理到脏数据,一篇讲透
java·面试·mybatis
MegaDataFlowers11 小时前
使用SpringBoot+MyBatis+MySQL完成后端的数据库增删改查(CRUD)操作
数据库·spring boot·mybatis
一只大袋鼠13 小时前
MyBatis 特性(三):缓存、延迟加载、注解开发
java·数据库·笔记·sql·缓存·mybatis
木易 士心15 小时前
MyBatis Plus 核心功能与用法
java·后端·mybatis
一只大袋鼠17 小时前
MyBatis 进阶实战(四): 连接池、动态 SQL、多表关联(一对多 / 多对一 / 多对多)
java·开发语言·数据库·sql·mysql·mybatis
霸道流氓气质1 天前
SpringBoot中调用mybatis方法提示映射文件未找到Invalid bound statement(not found)的奇葩解决
spring boot·后端·mybatis
一只大袋鼠1 天前
MyBatis 从入门到实战(二):代理 Dao 开发与多表关联查询
java·开发语言·数据库·mysql·mybatis
tycooncool2 天前
Spring Boot中集成MyBatis操作数据库详细教程
数据库·spring boot·mybatis
一只大袋鼠2 天前
MyBatis 入门详细实战教程(一):从环境搭建到查询运行
java·开发语言·数据库·mysql·mybatis
Full Stack Developme2 天前
MyBatis-Plus 流式查询教程
前端·python·mybatis