<settings> 标签
在 mybatis 全局配置文件中通过<settings>标签控制 mybatis 全局开关
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- mybatis 开启log4j支持功能 --> <settings> <setting name="logImpl" value="LOG4J"/> </settings> <environments default="dev"> <environment id="dev"> <transactionManager type="JDBC"></transactionManager> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/ssm"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/tao/mapper/PeopleMapper.xml"/> </mappers> </configuration>
在src下,新建log4j.properties:
log4j.rootCategory=ERROR, CONSOLE ,LOGFILE log4j.logger.com.tao.mapper=DEBUG log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout log4j.appender.CONSOLE.layout.ConversionPattern=%C %p %m %n log4j.appender.LOGFILE=org.apache.log4j.FileAppender log4j.appender.LOGFILE.File=MyBatis.log log4j.appender.LOGFILE.Append=true log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout log4j.appender.LOGFILE.layout.ConversionPattern=%C %m %L %n
Log4jTest 测试:
package com.tao.servlet; import java.io.IOException; import java.io.InputStream; import java.util.List; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.tao.pojo.People; public class Log4jTest { public static void main(String[] args) throws IOException { InputStream inputStream = Resources.getResourceAsStream("mybatis.xml"); //前面是工厂 实例化工厂对象时使用的是 构建者设计模式 名称标志:后面有Builder //构建者设计模式存在的意义:简化对象实例化的过程 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession session = sqlSessionFactory.openSession(); List<People> peopleList = session.selectList("com.tao.mapper.PeopleMapper.selectAll"); session.close(); } }
在src下也生成了对应的log文件
关于配置提一点:根据命名空间 配置需要的日志级别
这边配置的是mapper包下,也可以指定具体的类级别 :
namespace 属性值 ,namespace 类名
方法级别: namespace 属性值+标签 id 属性值
二、MyBatis中Log4j的使用
最新推荐文章于 2022-07-04 22:41:54 发布