概述
mybatis使用xml作为核心配置文件,建议文件名称为SqlMapConfig.xml
xml版本信息和mybatis对核心配置文件的dtd约束
<!-- xml版本信息 -->
<?xml version="1.0" encoding="UTF-8"?>
<!-- mybatis对config的dtd约束条件 -->
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
配置信息
结构
- configuration(配置)
- properties(属性)
- settings(设置)
- typeAliases(类型别名)
- typeHandlers(类型处理器)
- objectFactory(对象工厂)
- plugins(插件)
- environments(环境配置)
- environment(环境变量)
- transactionManager(事务管理器)
- dataSource(数据源)
- databaseIdProvider(数据库厂商标识)
- mappers(映射器)
配置信息根标签configuration
配置信息都包含在configuration中
属性properties
属性可以在整个配置文件中用来替换需要动态配置的属性值
属性在外部配置
属性文件内容
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis
username=root
password=root
- 使用resource指向属性文件
<properties resource="jdbcConfig.properties"></properties>
- 使用url指向属性文件
<properties url="file:///E:/Java%20%E6%95%99%E7%A8%8B/Mybatis%E6%95%99%E7%A8%8B/day4/src/main/resources/jdbcConfig.properties"></properties>
属性在内部配置
<properties >
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</properties>
属性的使用
<dataSource type="POOlED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
设置settings
暂未使用,详见官网:https://mybatis.net.cn/configuration.html
类型别名typeAliases
类型别名可为 pojo 类设置一个缩写名字。仅用于 XML 配置,用于降低冗余的全限定类名书写
<typeAliases>
<!-- 为cn.dy.pojo.User起个别名为user -->
<typeAlias type="cn.dy.pojo.User" alias="user"></typeAlias>
</typeAliases>
也可以指定一个包名,MyBatis 会在包名下面搜索需要的 Java Bean
推荐使用此方式
<typeAliases>
<package name="cn.dy.pojo"></package>
</typeAliases>
类型处理器typeHandlers
暂未使用,详见官网:https://mybatis.net.cn/configuration.html
配置环境
<!--配置mybatis环境 这里默认使用MySQL配置-->
<environments default="mysql">
<!--配置MySQL环境-->
<environment id="mysql">
<!-- MySQL事务 -->
<transactionManager type="JDBC"></transactionManager>
<!--数据源(连接池) POOLED为mybatis的数据源-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql:///mybatis"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
映射器mappers
映射文件引用
使用相对于类路径的资源引用
<mappers>
<mapper resource="cn/dy/mapper/userMapper.xml"/>
</mappers>
将包内的映射器接口实现全部注册为映射器,不再需要一个一个引入
推荐
<mappers>
<package name="cn.dy.mapper"/>
</mappers>