- configurations:根标签,表示配置信息、
- environments:可以配置多个环境
- environment:(包括事务管理器的配置+ 数据源的配置)
- transactionManager(配置事务管理器)
- type属性 :指定事务管理器具体使⽤什么⽅式,可选值包括两个
- JBDC:
- 底层原理:事务开始
- 底层原理:事务开始
- MANAGED:
- 交给其它容器来管理事务,⽐如WebLogic、JBOSS等。如果没有管理事务的容器,则没有事务。没有事务的含义:只要执⾏⼀条DML语句,则提交⼀次。
- 交给其它容器来管理事务,⽐如WebLogic、JBOSS等。如果没有管理事务的容器,则没有事务。没有事务的含义:只要执⾏⼀条DML语句,则提交⼀次。
- JBDC:
- type属性 :指定事务管理器具体使⽤什么⽅式,可选值包括两个
- dataSource:(数据源)
- 使用java.sql.datasource接口
- 也就是使用什么数据连接池类型
- 德鲁伊
- 德鲁伊
- type属性:
- ⽤来指定具体使⽤的数据库连接池的策略,可选值包括三个(都是一个规范)
- UNPOOLED:采⽤传统的获取连接的⽅式,虽然也实现Javax.sql.DataSource接⼝,但是并没有使⽤池的思想(但是还是获取数据源,每次创建一个connnection对象)
- property可以是:
- ○ driver 这是 JDBC 驱动的 Java 类全限定名。
- ○ url 这是数据库的 JDBC URL 地址。
- ○ username 登录数据库的⽤户名。
- ○ password 登录数据库的密码。
- ○ defaultTransactionIsolationLevel 默认的连接事务隔离级别。
- ○ defaultNetworkTimeout 等待数据库操作完成的默认⽹络超时时间(单位:毫秒)
- property可以是:
- POOLED:采⽤传统的javax.sql.DataSource规范中的连接池,mybatis中有针对规范的实现。
- ● property可以是(除了包含UNPOOLED中之外):
- ○ poolMaximumActiveConnections 在任意时间可存在的活动(正在使⽤)连接数
- 量,默认值:10
- ○ poolMaximumIdleConnections 任意时间可能存在的空闲连接数。
- ○ 其它....
- ● property可以是(除了包含UNPOOLED中之外):
- JNDI:采⽤服务器提供的JNDI技术实现,来获取DataSource对象,不同的服务器所能拿到DataSource是不⼀样。如果不是web或者maven的war⼯程,JNDI是不能使⽤的。Tomcat就是使用这个(连接第三方连接池)
- property可以是(最多只包含以下两个属性):
- ○ initial_context 这个属性⽤来在 InitialContext 中寻找上下⽂(即initialContext.lookup(initial_context))这是个可选属性,如果忽略,那么将会直接从InitialContext 中寻找 data_source 属性。
- ○ data_source 这是引⽤数据源实例位置的上下⽂路径。提供了 initial_context 配置时会在其返回的上下⽂中进⾏查找,没有提供时则直接在 InitialContext 中查找。
- property可以是(最多只包含以下两个属性):
- UNPOOLED:采⽤传统的获取连接的⽅式,虽然也实现Javax.sql.DataSource接⼝,但是并没有使⽤池的思想(但是还是获取数据源,每次创建一个connnection对象)
- ⽤来指定具体使⽤的数据库连接池的策略,可选值包括三个(都是一个规范)
- 使用java.sql.datasource接口
- mapping:
- 在Mappeers标签可以配置多个sql映射文件的路径
- 在Mappeers标签可以配置多个sql映射文件的路径
- mapper:
- 配置某个sql映射文件的路径
- 配置某个sql映射文件的路径
- resource:
- 使用相对于类路径的资源引用方式
- 使用相对于类路径的资源引用方式
- URL属性
- 使用完全的限定资源定位符(URL)方式
- 使用完全的限定资源定位符(URL)方式
- transactionManager(配置事务管理器)
- environment:(包括事务管理器的配置+ 数据源的配置)
- environments:可以配置多个环境