MyBatis 核心配置文件 – properties
properties: 属性。用键值对的方式配置属性值,用配置的属性替换配置文件中的值
(不推荐)第 1 种方式:直接在 properties 标签下配置 property
(推荐)第 2 种方式:配置 properties 文件
为什么推荐:配置 properties 文件的方式?
- 可以在不同环境使用不同的 properties 文件,从而实现不同环境使用不同的属性值。
例如,生产和开发环境的数据库 url 配置应该是不一样的。
实现在不同环境使用不同的 properties 文件
- 第 1 步:创建 profiles 文件夹,创建不同环境的文件夹(prod、dev),在不同环境的文件夹下创建 properties 文件
- 第 2 步:在 pom.xml 文件中配置 profiles 环境配置
- 第 3 步:在 pom.xml 文件中配置 resources 打包配置
- 第 4 步:执行 maven 打包
- 方式 1:使用 IDEA maven 工具栏
- 方式 2:maven 打包命令
MyBatis 核心配置文件 – typeAliases
typeAliases: 类型别名。类型别名可为 Java 类型设置一个缩写名字。它仅用于 XML 配置,意在降低冗余的全限定类名书写。
- 方式1:用 typeAlias 逐个配置类型别名
- 方式2:配置 package 为包路径下的所有类配置类型别名,类型别名 = 类名
- MyBatis 配置了一些默认的类型别名,方便开发者使用。见 TypeAliasRegistry 类。
MyBatis 核心配置文件 – environments
- MyBatis 可以通过 environments 实现多环境的,但一般我们不用这种方式实现,而使用不同环境 properties 文件来实现多环境。因此我们一般只配置一个 environment。
- environment 下可以配置 transactionManager 和 dataSource
- transactionManager:事务管理器, MyBatis 中有两种类型的事务管理器 JDBC | MANAGED
- JDBC – 这个配置直接使用了 JDBC 的提交和回滚功能
- MANAGED – 这个配置几乎没做什么。从不提交或回滚一个连接,而是让容器来管理事务的整个生命周期
- 如果你正在使用 Spring + MyBatis,则没有必要配置事务管理器,因为 Spring 模块会使用自带的管理器来覆盖前面的配置
- dataSource:数据源配置
- type ,数据源类型,MyBatis 支持三种数据源类型 UNPOOLED | POOLED | JNDI
- UNPOOLED,不使用连接池,每次请求时打开和关闭连接
- POOLED,使用连接池
- JNDI,这个数据源实现是为了能在如 EJB 或应用服务器这类容器中使用,容器可以集中或在外部配置数据源,然后放置一个 JNDI 上下文的数据源引用。
- property 主要包含数据库连接配置,driver、url、username、password
- type ,数据源类型,MyBatis 支持三种数据源类型 UNPOOLED | POOLED | JNDI
MyBatis 核心配置文件 – mappers
配置 XML 映射文件
- 方式1:使用相对于类路径的资源引用
- 方式2:使用映射器接口的完全限定类名
- 方式3:将包内的映射器接口全部注册为映射器
注意:如果使用方式3,要求 mapper xml 文件和 mapper 接口类所在的路径要完全相同