1.mybatis 可以使用properties来引入外properties配置文件的内容
resource:引入类路径下的资源
url:引入网络路径或者磁盘路径下的资源
<properties resource="dbconfig.properties"/>
2.settings包含很多重要的设置项
setting:用来设置每一个设置项
name:设置项名
value:设置项取值
<settings>
<setting name="mapUnderscoreToCamelCase" value="true" />
</settings>
3.typeAliases:别名处理器:可以为我们的Java类型起别名
typeAlias:为某个Java类型起别名 别名不区分大小写
type:指定要起别名的类别全类名;默认别名就是类名小写
<typeAliases>
<typeAlias type= "com.atguigu.mybatis.bean.Employee" alias="emp"/>
</typeAliases>
package:为某个报下的所有类批量起别名
name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写))
<typeAliases>
<package name="com.atguigu.mybatis.bean"/>
</typeAliases>
批量起别名的情况下,使用@Alias注解为某个类型指定新的别名
4.environments:环境们,mybatis可以配置多种环境,default指定使用某种环境,可以达到快速切换环境 environment:配置一个具体的环境信息,必须有两个标签;id代表当前环境的唯一标识
transactionManager:事务管理器
type:事务管理器的类型
dataSource:数据源
type:数据源类型
如下:要切换测试环境和开发环境,只要把default改一下就可以了
<environments default="test">
<environment id="test">
<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>
<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>
5. databaseIdProvider:支持多数据库厂商的 type=“DB_VENDOR”:VendorDatabaseIDProvider
作用就是得到数据库厂商的标识(驱动getDatabaseProductName()),mybatis就能根据数据库厂商处标识 来执行不同的SQL (MySQL,Oracle,SQL Server,xxx )
<databaseIdProvider type="DB_VENDOR">
<!-- 为不同的数据库厂商起别名 -->
<property name="MySQL" value="mysql"></property>
</databaseIdProvider>
6.mappers:将SQL映射注册到全局配置中
<mappers>
<!-- mapper : 注册一个SQL映射 resource:引用类路径下的SQL映射文件 url:引用网络路径或者磁盘路径下的SQL映射文件
file:///var/mappers/AutorMapper.xml
注册接口: class:引用(注册)接口: 1.有SQL映射文件,映射文件名必须和接口同名,并且放在与接口同一目录下
2.没有SQL映射文件,所有的SQL都是利用注解写在接口上
推荐: 比较重要的,复杂的Dao接口写在SQL映射文件 不重要的,简单的Dao接口为了开发快速可以使用注解 -->
<mapper resource="mybatis/mapper/EmployeeMapper.xml"/>
<!-- <mapper class="com.atguigu.mybatis.dao.EmployeeMapper"/> -->
</mappers>