搭建MyBatis框架之优化功能(七)

SqlSession默认不自动提交事务,若需要自动提交事务

可以使用SqlSessionFactory.openSession(true)

dart 复制代码
package com.baidu.mybatis.test;
import com.baidu.mybatis.mapper.UserMapper;
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 org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class MyBatisTest {
    @Test
    public void testMyBatis() throws IOException {
//        加载核心配置文件
        InputStream ras = Resources.getResourceAsStream("mybatis-config.xml");
//        获取SqlSessionFactoryBuilder
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//        获取sqlSessionFactory
        SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(ras);
//        获取SqlSession
        SqlSession sqlSession = sqlSessionFactory.openSession(true);
//        获取mapper接口对象
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//        测试功能
        int result = mapper.insertUser();
        //        提交事务
//        sqlSession.commit();
        System.out.println("result = " + result);
    }
}

通过日志功能来监测sql

加入依赖

加入log4j的配置文件

日志的级别

fatal(致命) > error(错误) > warn(警告) > info(信息)> debug(调试)

从左到右打印的内容越来越详细

log4j.xml

dart 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

    <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
        <param name="Encoding" value="UTF-8" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) %n" />
        </layout>
    </appender>
    <logger name="java.sql">
        <level value="debug" />
    </logger>
    <logger name="org.apache.ibatis">
        <level value="info" />
    </logger>
    <root>
        <level value="debug" />
        <appender-ref ref="STDOUT" />
    </root>
</log4j:configuration>
相关推荐
天空鸟_时光不老15 小时前
13-亮点提炼:把技术说辞翻译成业务价值
java·spring boot·spring·spring cloud·mybatis
禾小西2 天前
Redis AOF 日志:宕机了,如何避免数据丢失?
java·redis·mybatis
天空鸟_时光不老2 天前
09-RAG问答系统落地:从默认分割器的坑到Milvus召回调优
java·人工智能·spring boot·spring·spring cloud·maven·mybatis
西凉的悲伤2 天前
MyBatis 中 association 与 collection 详解
java·mybatis
天空鸟_时光不老2 天前
10-Agent安全隐患与SQL执行层加固
java·数据库·人工智能·sql·spring·maven·mybatis
jianjinwssy3 天前
MyBatis-Plus 从入门到实战:常用功能与核心原理
java·mybatis
ss2733 天前
AI全栈实战 | 3.6-01 数据库与 ORM:学过 MyBatis 再看 SQLAlchemy,才知道“半自动“和“全自动“差在哪
数据库·mybatis
代码什么用6 天前
使用javassist生成类 && MyBatis中接口代理机制及使用
mybatis
paopaokaka_luck7 天前
非遗文物数字化小程序(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
javascript·spring boot·mysql·数据分析·echarts·mybatis
韩曙亮7 天前
【JavaEE】MyBatis 基本用法 ⑤ ( 单条件查询 | 多条件查询 | 多条件动态查询 | 单条件动态查询 )
java·sql·java-ee·mybatis·mapper·sql映射