Mybatis基础(二)
Mybatis连接池
Mybatis连接池提供了三种配置方式,配置的位置在SqlMapConfig.xml
的dataSource
标签中,其type属性就是配置连接池的种类。type的可取值
1.POOLED:
利用“池”的概念将JDBC连接对象组织起来,避免了创建新的连接实例时所需的时间。这样使得应用的 响应速度更加快。
POOLED的配置属性:
poolMaximumActiveConnections:任意时间可以存在的活动连接数量,默认值是10.
poolMaximummldleConnections: 任意时间可能存在的空闲连接数
poolMaximumCheckoutTime: 在被强制返回之前,池中连接被检出时间,默认是20000ms.
poolTimeToWait: 如果获取连接花费的时间较长,他会给连接池打印状态日志并重新获取连接,避免在连接失败的时候一直等待,默认时间20000ms.
2.UNPOOLED:
这个数据源的实现只是每次被请求的时候打开和关闭连接,对没有性能要求的简单应用程序是可以的。
UPOOLED的配置属性:
driver: jdbc驱动的java类完全限定名。、
url:数据库的JDBC URL地址。
username:数据库的登录名。
password:数据库的密码。
defaultTransactionLevel:默认连接事务隔离级别。
3.JNDI:
这个数据源的实现是为了能在EJB或应用服务器这类容器中使用,容器可以集中在或在外部配置数据源, 然后放在一个JNDI上下文的引用。
inital_context: 这个属性是在InitalContext中寻找上下文。
data_source: 这个引用数据源实例位置的上下文路径。
Mybatis事务
事务概述:
事务就是对数据访问,修改,提交等一系列被绑定成一个整体的操作,事务是一个最小的执行单元,不能被分开,要么同时完成,要么同时失败。
事务的特性 : ACID
1.原子性(Atomicity):事务是应用中最小的执行单元,不可被分割。
2.一致性(Consistency): 事务的执行结果,必须使数据库从一种一致性状态变到另一种一致性状态。
3.隔离性(Isolation):各个事务的执行互不干扰,任意事务的内部操作对其他并发的事务都是隔离的。
4.持续性(Durability):又叫持久性,即事务一旦提交,对数据的任何修改都会被保存到数据库。
事务的隔离级别
事务隔离级别 脏读 不可重复读 幻读 解释 读未提交(read-uncommitted) 是 是 是 可以读到未提交的事物 不可重复读(read-committed) 否 是 是 只能读提交的事物 可重复读(repeatable-read) 否 否 是 事务提交前后都能读【MySql默认】 串行化(serializable) 否 否 否 serializable时会锁表,是最安全的,也是日常开发基本不会用 术语解释:
1.脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据
2.不可重复读:事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果 不一致
3.幻读:系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级,但是系统管理员B就在这个时候插入了一条具体分数的记录,当系统管理员A改结束后发现还有一条记录没有改过来,就好像发生了幻觉一样,这就叫幻读。
Mybatis基础(二)的更多相关文章
- mybatis 基础(二) CRUD中的关键点
今日学习中遇见几个问题 关于mybatis foreach的几种情况 1.当我需要传入多个参数的时候,可以将参数封装进map集合中(一般来说是针对一个对象而言的,比如user中的username,ge ...
- mybatis 基础(二) xml文件中的其他知识点
mybatis xml文件中一些标签的使用 此标签主要用作 配置 "别名" 如果实体类与数据库中字段名在不区分大小写的情况下相同的话, 那就不需要配置resultMap,因为mys ...
- mybatis 基础(二) 动态sql 关于where if / where choose when otherwise
个人理解: where if就相当于正常的java中的if 语句,如果有多个条件组合判断的话用 and, or连接 而where choose when otherwise choose就好像是swi ...
- MyBatis基础入门《二十》动态SQL(foreach)
MyBatis基础入门<二十>动态SQL(foreach) 1. 迭代一个集合,通常用于in条件 2. 属性 > item > index > collection : ...
- MyBatis基础入门《十二》删除数据 - @Param参数
MyBatis基础入门<十二>删除数据 - @Param参数 描述: 删除数据,这里使用了@Param这个注解,其实在代码中,不使用这个注解也可以的.只是为了学习这个@Param注解,为此 ...
- MyBatis基础入门《二》Select查询
MyBatis基础入门<二>Select查询 使用MySQL数据库,创建表: SET NAMES utf8mb4; ; -- ---------------------------- -- ...
- mybatis基础系列(二)——基础语法、别名、输入映射、输出映射
增删改查 mapper根节点及其子节点 mybatis框架需要读取映射文件创建会话工厂,映射文件是以<mapper>作为根节点,在根节点中支持9个元素,分别为insert.update.d ...
- myBatis 基础测试 表关联关系配置 集合 测试
myBatis 基础测试 表关联关系配置 集合 测试 测试myelipse项目源码 sql 下载 http://download.csdn.net/detail/liangrui1988/599388 ...
- JAVA之Mybatis基础入门--框架搭建与简单查询
JAVA中,操作数据库有JDBC.hibernate.Mybatis等技术,今天整理了下,来讲一讲下Mybatis.也为自己整理下文档: hibernate是一个完全的ORM框架,是完全面向对象的.但 ...
- mybatis基础系列(四)——关联查询、延迟加载、一级缓存与二级缓存
关本文是Mybatis基础系列的第四篇文章,点击下面链接可以查看前面的文章: mybatis基础系列(三)——动态sql mybatis基础系列(二)——基础语法.别名.输入映射.输出映射 mybat ...
随机推荐
- IDEA环境使用Git
推送到Github 在设置中登录github账户 点击OK 将项目交给Git管理 之后项目文件就会变成红色 添加文件到暂存区 点击Add之后,项目文件会变成绿色 添加文件到本地仓库 点击Commit ...
- 小白进阶之路-python格式化输出
1.不使用格式化前:传值时比较麻烦而且不精确. 2.格式化输出后,%代表先占个位,s代表字符串,%s代表这里之后会传一个字符串类型的值,%s其实可以接受任意类型的值:%d传入的值要求必须是数字. %s ...
- 一个.NET程序员 "2019" 跳槽3次的悲惨故事
2019年是值得深思的一年,在找工作上没有那么用心,导致碌碌无为,在这里我建议大家找工作的时候不要太着急...要不然会被逼疯的,一定不能被“工作”挑,一定要做到挑"工作".:那我就 ...
- MATLAB生成正弦波
要求:选定采样频率,生成不同频率的正弦波 程序: f1=100;%生成正弦波的频率 fs=1000;%采样频率 N=100;%采样点数 n=0:N-1; t=n/fs;%时间序列 y=sin(2*pi ...
- Arduino_URO端口与AtMega328p引脚对应图
Arduino微控制器的数字端口和模拟端口与ATMEGA 328芯片引脚的对应关系图如下.标有0~13标号的引脚对应的是数字端口,在0~13前面有符号“~”的引脚对应的端口具有PWM输出功能.标有A0 ...
- 【记】本地远程连接VM VirtualBox中虚拟机Centos6的数据库MySQL
目标:远程连接虚拟机中的MySQL 效果图如下 1. VBox设置好端口转发 具体步骤请看 VM VirtualBox 网络地址转换(NAT)使用详解 2. MySQL授权 如果这时我们就去远程连接M ...
- vue文字间歇无缝向上滚动
公司的管理系统中有"文字间歇无缝向上滚动"的需求,现在这种需求基本在项目开发中已经消失了,没什么新颖的,但架不住公司高层喜欢这种玩意儿,所以,作为开发人员,即使你有一百个不乐意,谁 ...
- Java扫描指定文件路径下的文件并且递归扫描其子目录下的所有文件
本文主要实现了扫描指定文件路径下的文件,递归扫描其子目录下的所有文件信息,示例文件为: 要求将后缀为.dat的文件夹信息也写入到数据库中,然后将.chk文件解析,将文件中对应的内容读出来写入到数据库, ...
- how to render html tag
使用autoescaping If autoescaping is turned on in the environment, all output will automatically be esc ...
- Unity 基于Cinemachine计算透视摄像机在地图中的移动范围
Unity中Cinemachine的基础功能介绍可详见之前写的博客: https://www.cnblogs.com/koshio0219/p/11820654.html 本篇的重点是讨论,在给定规则 ...