<?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> <!-- 1.MyBatis可以使用properties来引入外部properties配置文件的内容 resource:引入类路径下的资源 url:引入网路路径或者磁盘路径下的资源 --> <properties resource="dbconfig.properties"></properties> <!-- 2.settings包含很多重要的设置项 setting:用来设置每一个设置项 name:设置项名 value:设置项取值 name="mapUnderscoreToCamelCase"将数据库中带下划线的列,转成驼峰命名法 --> <settings> <setting name="mapUnderscoreToCamelCase" value="true" /> </settings> <!--3.typeAliases别名处理器,可以为我们的java类型起别名 --> <!-- typeAlias为某个java类型起别名 typeAlias节点中的属性 type:指定要起别名的类型全类名,默认别名是就是类名全小写:emp alias:指定新的别名 --> <!-- <typeAlias type="cn.bdqn.mybatis.been.Emp" alias="Emp"/> --> <!-- 批量起别名 package:为某个包下的类批量起别名 name属性:指定包名,为当前包以及所有的后代包中的类都起一个默认别名(默认别名就是类名的全小写) 批量起别名时如果有相同类名的化,可以使用注解的方式为同名类起别名,@Alias("Emp") --> <typeAliases> <package name="cn.bdqn.mybatis.been" /> </typeAliases> <!-- 4.environments环境们,mybatis可以配置多种环境,default属性可以指定使用某种环境,从而达到快去进行环境的切换 environment:配置具体的环境信息;必须有两个标签:transactionManager 和dataSource,id属性代表当前环境的唯一标识 transactionManager:事务管理器;type属性代表事务管理器的类型,可以有两种取值JDBC(JdbcTransactionFactory)|MANGED(ManagedTransactionFactory),其实JDBC和MANGED是两个别名 自定义事务管理器,只需要实现TransactionFactory接口,Type指定全类名 dataSource 数据源 type:数据源类型,官方提供三种UNPOOLED|POOLED|JNDI 这三个也是别名 可以自定义数据源:实现DataSourceFactory接口,type就是我们自定义数据源的全类名 --> <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> <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> </environments> <!-- 5.databaseIdProvider:支持多数据库厂商 type="DB_VENDOR",DB_VENDOR也是别名,指的VendorDatabaseIdProvider这个类 作用就是得到数据库厂商的标识(驱动自带),Mybatis就能根据数据库厂商标识来执行不同的sql property.为不同的数据库厂商起别名 --> <databaseIdProvider type="DB_VENDOR"> <property name="MySQL" value="mysql" /> <property name="Oracle" value="oracle" /> </databaseIdProvider> <!--将我们写好的SQL映射文件(empMapper.xml)一定要注册到全局配置文件中 (mybatis-config.xml) --> <!-- 6.mappers:将sql映射注册到全局配置中 注册文件: resource:引入类路径下的sql映射文件 url:引用网络路径或磁盘路径下的sql映射文件 注册接口: class:直接引用(注册)接口 1.有sql映射文件,映射文件名必须与接口同名.并且放在与接口同一目录下; 2.没有sql映射文件,所有的sql都是利用注解卸载接口上 推荐:比较重要的DAO接口我们来写SQL映射文件 不重要的,简单的dao接口为来快速开发可以使用注解 package 批量注册有sql映射文件,映射文件名必须与接口同名.并且放在与接口同一目录下; name用来指定包名 --> <mappers> <mapper resource="empMapper.xml" /> </mappers> </configuration>