7-Mybatis 连接池与事务深入
一、Mybatis 的连接池技术
1.Mybatis 数据源的分类
2.SqlMapConfig.xml 中数据源的配置
<!-- 配置数据源(连接池)信息 -->
<dataSource type="POOLED"> <property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
3.Mybatis 中 DataSource 的存取
package org.apache.ibatis.datasource;
import java.util.Properties;
import javax.sql.DataSource;
/**
* @author Clinton Begin
*/
public interface DataSourceFactory {void setProperties(Properties props);DataSource getDataSource();
}
4.Mybatis 中连接的获取过程分析
二、Mybatis 的事务控制
1.JDBC 中事务的回顾
2.Mybatis 中事务提交方式
Mybatis 中事务的提交方式,本质上就是调用 JDBC 的 setAutoCommit()来实现事务控制。
@Testpublic void testSave() {User user = new User();user.setUserName("小王 新");user.setAddress("北京市顺义区");user.setSex("男");user.setBirthday(new Date(System.currentTimeMillis()));System.out.println("保存操作之前:" + user);//5.执行保存方法userDao.saveUser(user);System.out.println("保存操作之后:" + user);}
3.Mybatis 自动提交事务的设置
@Before//在测试方法执行之前执行 public void init() throws Exception {//1.读取配置文件in = Resources.getResourceAsStream("SqlMapConfig.xml");//2.创建构建者对象SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();//3.创建 SqlSession 工厂对象factory = builder.build(in);//4.创建 SqlSession 对象 session = factory.openSession(true);//5.创建 Dao 的代理对象userDao = session.getMapper(IUserDao.class); }@After//在测试方法执行完成之后执行 public void destroy() throws Exception {//session.commit();//7.释放资源session.close();in.close(); }
7-Mybatis 连接池与事务深入相关推荐
- java day55【 Mybatis 连接池与事务深入 、 Mybatis 的动态 SQL 语句、 Mybatis 多表查询之一对多 、 Mybatis 多表查询之多对多】...
第1章 Mybatis 连接池与事务深入 1.1 Mybatis 的连接池技术 1.1.1 Mybatis 连接池的分类 1.1.2 Mybatis 中数据源的配置 1.1.3 Mybatis 中 D ...
- mybatis连接池的3种配置方式(POOLED,UNPOOLED,JNDI)
mybatis连接池的3种配置方式 1,POOLED 采用传统的javax. sql. DataSource规范中的连接池.一旦数据库操作完成,mybaties会将此连接返回给连接池.mybatis有 ...
- MySQL会回收使用中的连接吗_Node.js实现mysql连接池使用事务自动回收连接的方法示例...
本文实例讲述了Node.js实现mysql连接池使用事务自动回收连接的方法.分享给大家供大家参考,具体如下: var mysql = require('mysql'), Connection = re ...
- Mybatis 连接池POOLED
1.连接池: 我们在实际开发中都会使用连接池. 因为它可以减少我们获取连接所消耗的时间. 2.mybatis中的连接池 在 Mybatis 中也有连接池技术,但是它采用的是自己的连接池技术. 在 My ...
- Mybatis连接池介绍与分类 Mybatis使用POOLED UNPOOLED配置连接池的原理分析
一.连接池 1.概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象 ...
- mybatis学习(四)连接池、事务、动态SQL、多表查询
目录 连接池 事务 动态SQL 1.if标签 2.where标签 3.foreach标签 4.sql标签 多表操作 (一)一对多.多对一 .一对一 1.查询所有账户,在账户信息后显示所属的用户的用户名 ...
- day_03_连接池、事务、一对多和多对多配置
一.完成连接池的配置和使用 1.连接池 创建一个java.sql.Connection对象的代价是如此巨大,是因为创建一个Connection对象的过程,在底层就相当于和数据库建立的通信连接,在建立通 ...
- mybatis 连接池_应用框架之Mybatis数据源和连接池
本文将从以下几个方面介绍Mybatis的数据源和连接池: MyBatis数据源DataSource分类 数据源DataSource的创建过程 DataSource什么时候创建Connection对象 ...
- 【Java从0到架构师】MyBatis - 连接池、分页_PageHelper
连接池.分页 集成 druid 连接池 读取外部的配置文件 分页查询 - PageHelper PageHelper 环境配置 PageHelper 使用方法 Java 从 0 到架构师目录:[Jav ...
最新文章
- 如何巧用方位角和倾斜角增大光伏电站的发电量?
- 分布式文件系统Fastdfs 详细安装笔记
- Java纸牌拖拉机简单模拟
- Little Sub and Applese
- Java趣味分享:try/finally
- Docker使用Dockerfile创建Centos(tomcat+jdk)镜像
- 每天一个linux命令
- java 数据流 中文_【Java I/O流】File、字符集、字节流、字符流、缓冲流、数据流、对象流、序列化、try-wi...
- 陆振波的svm的matlab代码的解释,陆振波SVM的MATLAB代码解释
- linux设置伪静态地址,wordpress网站linux和win主机URL伪静态设置方法详解
- 学习GIT的一个小游戏
- PC端微信更新至3.7.0版文件保存至MsgAttach文件夹乱码问题解决
- L'Hospital法则
- 【C++】黑马程序员 C++学习课程—C++基础入门
- Cherry键盘-windows键-没反应
- opensuse安装face_recognition全记录
- 个人博客添加网易云音乐Flash插件
- 智慧城市,是城市建设者做的最灿烂的事
- FL Studio20.8完整版注册密钥下载有哪些新功能?
- python循环语句和跳出语句详解
热门文章
- 【Spark】Spark Class is not registered joins UnsafeHashedRelation kryo
- 95-40-050-java.util.concurrent-CopyOnWriteArraySet
- 【clickhouse】clickhouse 如何实现tcp方式发送数据
- 【面试题】HashMap 面试 21 问
- 【Linux】Linux下 CURL如何发送http请求
- 【kafka】记一次线上kafka一直rebalance故障 消费慢 数据积压
- Unsupported major.minor version 52.0解决办法
- ListView的性能优化之convertView和viewHolder
- 18张图,详解SpringBoot解析yml全流程
- 分布式定时任务框架选型,写得太好了!