mybatis设置自动提交事务
我们想要mybatis帮助我们自动提交事务其实很简单,只需要在SqlSessionFactory对象的openSession方法中设置参数为true就可以了,mybatis工具类如下:
public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory;
static {
try {
//使用Mabatis第一步:获取SqlSessionFactory对象
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//有了SqlsessionFactory,我们就可以从中获得SqlSession的实例了。
public static SqlSession getSqlSession(){
return sqlSessionFactory.openSession(true); //如果不设置参数或者参数为false就是手动提交事务,参数设置为true就是自动提交事务
}
}
自动提交事务有什么用?
在以前我们没有给openSession设置参数的时候,默认是手动提交事务。这样我们进行增删改操作的时候就需要手动提交事务,如下边第7行代码就是提交事务
1 @Test
2 public void addUser(){
3 SqlSession sqlSession = MybatisUtils.getSqlSession();
4 UserMapper mapper = sqlSession.getMapper(UserMapper.class);
5 int res = mapper.addUser(new User(6, "王五", "789456"));
6 System.out.println("res:"+res);
7 sqlSession.commit();
8 sqlSession.close();
9 }
现在我们给openSession设置参数为true之后,mybatis就帮我们自动提交事务
1 @Test
2 public void addUser(){
3 SqlSession sqlSession = MybatisUtils.getSqlSession();
4 UserMapper mapper = sqlSession.getMapper(UserMapper.class);
5 int res = mapper.addUser(new User(6, "王五", "789456"));
6 System.out.println("res:"+res);
7 sqlSession.close();
8 }
mybatis设置自动提交事务的更多相关文章
- mybatis中autoCommit自动提交事务
今天学习了下mybatis, 对其中的autoCommit自动提交事务比较好奇, 研究了下,把配置和代码都放上 mapper.xml如下: <?xml version="1.0&quo ...
- 设置mysql InnoDB存储引擎下取消自动提交事务
mysql 存储引擎中最长用的有两种,MyISAM 存储引擎和InnoDB存储引擎. 1.MyISAM 存储引擎 不支持事务,不支持外键,优势是访问速度快: 2.InnoDB存储引擎 支持事务,一般项 ...
- Mybatis工具类(自动提交事务)
public class MybatisUtils { private static SqlSessionFactory sqlSessionFactory; static { try { //获取工 ...
- Springboot 系列(十一)使用 Mybatis(自动生成插件) 访问数据库
1. Springboot mybatis 介绍 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数获取 ...
- mybatis枚举自动转换(通用转换处理器实现)
https://blog.csdn.net/fighterandknight/article/details/51520595 https://blog.csdn.net/fighterandknig ...
- Springboot mybatis generate 自动生成实体类和Mapper
https://github.com/JasmineQian/SpringDemo_2019/tree/master/mybatis Springboot让java开发变得方便,Springboot中 ...
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
原文链接 我们这一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池 ...
- (4.19)sql server中的事务模式(隐式事务,显式事务,自动提交事务)
(4.19)sql server中的事务模式(隐式事务,显式事务,自动提交事务) 1.概念:隐式事务,显式事务,自动提交事务 2.操作:如何设置事务模式 3.存储过程中的事务 XACT_ABORT 1 ...
- IDEA Maven Mybatis generator 自动生成代码
IDEA Maven Mybatis generator 自动生成代码 一.安装配置maven以及在Idea中配置maven 安装过程步骤可以看上面的博文,里面介绍得很详细. 二.建数据表 DROP ...
随机推荐
- 12.PHP_PDO数据库抽象层
PDO数据库抽象层 其实也就是说,为了方便PHP项目各种数据库切换的方便以及代码兼容性,再各种数据库上又封装了一层,做成了统一的接口,方便数据库使用和切换. PDO链接mysql数据库: <?p ...
- 寻找OEP
1.使用ESP定律 OD载入后,F8一次,在寄存器窗口的ESP的内容上(如0012FFA4)右键:"在数据窗口中跟随",到内存数据窗口,将内存数据窗口以HEX数据形式显示,在刚才的 ...
- Mac SSH工具-Termius
全平台,功能强大 SSH连接.SFTP连接.端口转发.多设备同步 官方网站
- Python 之父爆料:明年至少令 Python 提速 1 倍!
大概在半年前,我偶然看到一篇文章,有人提出了给 Python 提速 5 倍的计划,并在寻找经费赞助.当时并没有在意,此后也没有看到这方面的消息. 但是,就在 5 月 13 日"2021 年 ...
- 关于Aborted connection告警日志的分析
前言: 有时候,连接MySQL的会话经常会异常退出,错误日志里会看到"Got an error reading communication packets"类型的告警.本篇文章我们 ...
- OO随笔之和蔼的第四单元——UML系列
本单元的OO作业相比以前的,实在可以以和蔼来形容.但是和蔼并不意味着什么都不做,这单元的两次作业,特点在于每种查询难度不大,但是有很多需要商榷的细节点和查询种类比较多.由于UML图和java8之间,存 ...
- [java] XML DTD XSD
XML是用来干什么的 https://bbs.csdn.net/topics/120762 https://blog.csdn.net/Rain722/article/details/52925828 ...
- 好好好重要常用必备linux命令
查看当前目录下文件个数: $find ./ | wc -l 以上这个命令用到的频率如此之高,以至于我们需要为它建立一个快捷命令方式: 在.bashrc 中设置命令别名: alias lsl='ls - ...
- IEEE754标准
以下计算按规格化规定: S:符号位 M:分数值 E:指数偏移值 单精度浮点数(32bit): NUM_single = (-1)^S * 1.M * 2^(E-127) 双精度浮点数(64b ...
- k8s健康检查(9)
一.默认的健康检查 强大的自愈能力是 Kubernetes 这类容器编排引擎的一个重要特性.自愈的默认实现方式是自动重启发生故障的容器.除此之外,用户还可以利用 Liveness 和 Readines ...