mybatis logback日志输出

本文主要介绍了如何在MyBatis项目中配置并使用Logback进行日志输出,包括CartMapper类的设置,测试类的编写,以及logback的日志映射文件配置。同时,还解决了在pom.xml中加载src/main/java资源配置文件的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

插件 logback日志插件; HikariCP连接池插件
CartMapper类

package ws.wsj.mapper;

import org.apache.ibatis.annotations.Select;

public interface CartMapper {
    @Select("select version()")
    public String version();
}

CartMapper测试类

package ws;

import com.zaxxer.hikari.HikariDataSource;
import org.apache.ibatis.mapping.Environment;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.ibatis.transaction.TransactionFactory;
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ws.wsj.mapper.CartMapper;

public class Demo {

    public final static Logger logger = LoggerFactory.getLogger(Demo.class);

    public static void main(String[] args) {
        //建立数据源
        var ds = new HikariDataSource();
        ds.setJdbcUrl("jdbc:mysql:/d3");
        ds.setUsername("root");

        //建立事务对象 Jdbc事务工厂 JdbcTransactionFactory()
        TransactionFactory tx = new JdbcTransactionFactory();

        //建立环境对象
        Environment env = new Environment("development", tx, ds);

        //建立配置对象,相当于mybatis-config.xml文件
        Configuration cfg = new Configuration(env);
        //添加映射器 addMappers
        cfg.addMappers("ws.wsj.mapper");

        // Sql会话工厂 SqlSessionFactory
        SqlSessionFactory sf = new SqlSessionFactoryBuilder().build(cfg);
        SqlSession ss = sf.openSession(true);

        //获取映射器 getMapper
        CartMapper cart = ss.getMapper(CartMapper.class);
        //System.out.println(cart.version());
        logger.info(cart.version());
    }
}

logback日志,映射文件

<?xml version="1.0"?>
<configuration>
    <!-- ch.qos.logback.core.ConsoleAppender 控制台输出 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>[%-5level] %L %d{HH:mm:ss} [%thread] %L %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 日志级别 all info off  -->
    <root>
        <level value="off"/>
        <appender-ref ref="STDOUT"/>
    </root>
    <logger name="ws" level="DEBUG"/>
    <logger name="ws.MyDemo" level="info"/>
</configuration>

logback日志 测试类

package ws;

import lombok.extern.slf4j.Slf4j;
import org.junit.Test;

@Slf4j
public class MyDemo {
    //Logger log = LoggerFactory.getLogger(MyDemo.class);

    @Test
    public void t1() {
        log.info("hello world");
    }
}

pom.xml 处理无法src/main/java加载资源配置文件

<build>
        <finalName>${project.artifactId}</finalName>
        <testSourceDirectory>src/test/java</testSourceDirectory>
        <sourceDirectory>src/main/java</sourceDirectory>
        <!-- 处理无法src/main/java加载资源配置文件 -->
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                    <include>**/*.properties</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.xml</include>
                    <include>**/*.properties</include>
                </includes>
            </resource>
        </resources>
    </build>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值