代码语言:javascript复制
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="jdbc.properties">
</properties>
<typeAliases>
<package name="com.north.mybatis.pojo"/>
</typeAliases>
<!--设置连接数据库的环境-->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<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>
</environment>
</environments>
<!--引入映射文件-->
<mappers>
<!-- <mapper resource="mappers/UserMapper.xml"></mapper>-->
<package name="com.north.mybatis.mapper"/>
</mappers>
</configuration>
1. configuration
configuration : 根标签 , 表示配置信息
2. environments
- environments : 配置多个连接数据库的环境 , 以 "s" 结尾表示复数 , 也就是说 mybatis 的环境可以配置多个数据源
- default 属性 : 表示默认使用的环境 , default 后面填写的是
**environment **
的 id , **default的值只需要和environment的id值一致即可**
- environment : 配置具体的环境(
**主要包括 : 事务管理器的配置 数据源的配置**
)- id:表示连接数据库的环境的唯一标识,不能重复 , 该表示用在 environments 的 default 后面 ,用来指定默认环境的选择
- transactionManager : 配置事务管理器
- type 属性:指定事务管理器具体使用什么方式,可选值包括两个
- JDBC:使用 JDBC 原生的事务管理机制。底层原理:事务开启 conn.setAutoCommit(false); ...处理业务...事务提交 conn.commit(); 执行 SQL 时,使用的是 JDBC 中原生的事务管理方式,事务的提交或回滚需要手动处理
- MANAGED:交给其它容器来管理事务,比如 WebLogic、JBOSS 等。如果没有管理事务的容器,则没有事务。没有事务的含义:只要执行一条 DML 语句,则提交一次。
- type 属性:指定事务管理器具体使用什么方式,可选值包括两个
- dataSource : 指定数据源
- type : 设置数据源的类型 (
**type="POOLED|UNPOOLED|JNDI"**
)- POOLED:表示使用数据库连接池缓存数据库连接
- UNPOOLED:表示不使用数据库连接池
- JNDI:表示使用上下文中的数据源
- type : 设置数据源的类型 (
property
代码语言:javascript复制<!--设置连接数据库的驱动-->
<property name="driver" value="${jdbc.driver}"/>
<!--设置连接数据库的连接地址-->
<property name="url" value="${jdbc.url}"/>
<!--设置连接数据库的用户名-->
<property name="username" value="${jdbc.username}"/>
<!--设置连接数据库的密码-->
<property name="password" value="${jdbc.password}"/>
3. properties
代码语言:javascript复制 <!--引入properties文件-->
<properties resource="jdbc.properties" />
4. typeAliases
- typeAlias:设置某个类型的别名
- 属性 :
- type:设置需要设置别名的类型
- alias:设置某个类型的别名,若不设置该属性,那么该类型拥有默认的别名,即类名且不区分大小写
<!--设置类型别名-->
<typeAliases>
<!--
typeAlias:设置某个类型的别名
属性:
type:设置需要设置别名的类型
alias:设置某个类型的别名,若不设置该属性,那么该类型拥有默认的别名,即类名且不区分大小写
-->
<!--<typeAlias type="com.atguigu.mybatis.pojo.User"></typeAlias>-->
<!--以包为单位,将包下所有的类型设置默认的类型别名,即类名且不区分大小写-->
<package name="com.atguigu.mybatis.pojo"/>
</typeAliases>
5. mappers
- mappers : 引入映射文件 , 在 mappers 标签中可以配置多个 SQL 映射文件的路径
- mapper : 配置某个 sql 映射文件的路径
- 以包为单位引入映射文件的要求 :
- mapper 接口所在的包要和映射文件所在的包一致
- mapper 接口要和映射文件的名字一致