1、peoperties
mybatis可以使用properties来引入外部properties配置文件的内容
- resource:引入类路径下的资源
- url:引入网络或者磁盘路径下的资源
db.properties:
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url= jdbc:mysql://localhost:3306/mybatis
jdbc.username = root
jdbc.password = houchen
2、settings
这是mybatis中极为重要的调整设置,他们会改变mybatis的运行时行为
<!-- 设置转驼峰 settings:所有的设置项 setting :每个设置项 --> <settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings>
3、typeAliases 取别名
<!--别名处理器 typeAliases 为某个类型起别名 别名不区分大小写--> <typeAliases> <!-- typeAlias : 为某个java类型取别名 type: 指定要娶别名的类型的全类名,默认别名时类名小写employee alias: 指定新的别名 --> <!--<typeAlias type="com.atguigu.mybatis.bean.Employee" alias="emp"></typeAlias>--> <!--批量起别名 name :指定包名(为当前包已经下面所有子包的所有类起一个默认别名,类名小写) --> <package name="com.atguigu.mybatis.bean"/> </typeAliases>
4、typeHandlers_类型处理器
5、plugins_插件简介
6、environments
<!-- mybatis 可以配置多种环境 default指定使用某种环境 environment :配置具体的环境信息,必须有两个标签:transactionManager dataSource id: 是环境的唯一标识 transactionManager: 事务管理器 type : JDBC|MANAGED 事务管理器的类型 dataSource: 数据源 type: UNPOOLED|POOLED|JNDI --> <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>
7、databaseIdProvider_多数据库支持
<!-- databaseIdProvider : 支持多数据库厂商 mybatis 根据数据库厂商的标识来执行不同的sql --> <databaseIdProvider type="DB_VENDOR"> <property name="MySQL" value="mysql"/> //支持mysql环境 <property name="Oracle" value="oracle"/> //支持oracle环境 </databaseIdProvider>
databaseId:告诉mybatis 这条语句是在什么环境下执行的
<select id="getEmpById" resultType="employee" databaseId="mysql"> select id,last_name,email,gender from tbl_employee where id = #{id} </select>
8、mappers
<!-- 将我们写好的sql映射文件(EmployeeMapper.xml) 一定要注册到全局配置文件(mybatis-config.xml)中 --> <!-- 将sql映射注册到 mybatis 全局配置文件中 mapper: 注册一个sql映射 resource:引用类路径下的sql映射文件 url : 引用网络路径或者磁盘路径下的sql映射文件 class : 引用接口 1、映射文件名和接口同名,并且与接口放在同一路径下 2、没有sql映射文件,所有的sql都是利用注解写在接口上 推荐: 比较重要的,复杂的dao接口,我们来写sql映射文件 不重要,简单的sql文件我们利用注解写在接口上 package: 批量注册 映射文件名和接口同名,并且与接口放在同一路径下 --> <mappers> <!--<mapper resource="EmployeeMapper.xml" />--> <!--<mapper class="com.atguigu.mybatis.mapper.EmployeeMapper"></mapper>--> <package name="com.atguigu.mybatis.mapper"/> </mappers>