目录

一、Mybatis配置文件 — properties标签

二、Mybatis配置文件 — settings标签

三、Mybatis配置文件 — plugins标签

四、Mybatis配置文件 — typeAliases标签

五、Mybatis配置文件 — environments标签

六、Mybatis配置文件 — mappers标签


一、Mybatis配置文件 — properties标签

MyBatis配置文件结构:

configuration

properties(属性)

property

settings(全局配置参数)

setting

plugins(插件)

plugin

typeAliases(别名)

typeAliase

package

environments(环境)

environment

transactionManager(事务管理)

dataSource(数据源)

mappers(映射器)

mapper

package

properties

属性值定义。properties标签中可以定义属性值,也可以引入外部配置文件。无论是内部定义还是外部引入,都可以使用${name}获取值。

例如:我们可以将数据源配置写到外部的db.properties中,再使用properties标签引入外部配置文件,这样可以做到动态配置数据源。

① 编写db.properties

jdbc.driver = com.mysql.cj.jdbc.Driverjdbc.url = jdbc:mysql://localhost:3306/mybatisjdbc.username = rootjdbc.password = 666666

② 在配置文件中引入db.properties

                                                                                                                                                            

当然我们也可以将数据源数据通过 配置到MyBatis配置文件内,但这样做没什么意义。

测试一下findAll方法是否测功执行

OK,说明了确实可以的。

二、Mybatis配置文件 — settings标签

是配置MyBatis运行时的一些行为的,例如缓存、延迟加载、命名规则等一系列控制性参数。后期我们会使用该标签配置缓存和延迟加载等。

三、Mybatis配置文件 — plugins标签

是配置MyBatis插件的。插件可以增强MyBatis功能,比如进行sql增强,打印日志,异常处理等。后期我们会使用该标签配置分页插件。

四、Mybatis配置文件 — typeAliases标签

MyBatis对常用类有默认别名支持,比如java.lang.Stirng的别名为string。除此之外,我们也可以使用 设置自定义别名。

为一个类配置别名,如下图所示

 

此时我们即可在映射文件中使用自定义别名,如帮User类配置一个别名
① 配置文件:

                

② 映射文件:

            select * from user    

③ 测试findAll方法:

OK,同样是可以执行的,说明该方法可以使用 。

为一个所有包下的所有类配置别名

  

此时该包下的所有类都有了别名,别名省略包名,和类名相同。

如:

① 配置文件:

                

② 映射文件:

            select * from user limit #{startIndex},#{pageSize}    

③ 测试结果:

OK,同样可以运行,说明该方法也可以使用。

五、Mybatis配置文件 — environments标签

可以为 MyBatis 配置数据环境。

事务管理

            

连接池

                          

dataSourcetype属性:

  1. POOLED:使用连接池管理连接,使用MyBatis自带的连接池。
  2. UNPOOLED:不使用连接池,直接由JDBC连接。
  3. JNDI:由JAVAEE服务器管理连接,如果使用Tomcat作为服务器则使用Tomcat自带的连接池管理。

六、Mybatis配置文件 — mappers标签

用于注册映射文件或持久层接口,只有注册的映射文件才能使用,共有四种方式都可以完成注册:

① 使用相对路径注册映射文件

                

② 使用绝对路径注册映射文件

   

③ 注册持久层接口

   

④ 注册一个包下的所有持久层接口