一个完整的配置实例:

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

 

各个配置参数的详解:

properties参数

用来引入一个外部属性文件:引入一个 config.properties 文件

config.properties

driver=com.mysql.jdbc.Driver

url=jdbc:mysql:///ssm

username=root

password=123

properties标签:引入它避免了数据库信息的“硬编码”,当需要连接其他数据库的时候,只需要更改数据库的配置文件即可。当 properties 中有 property子标签时,并且子标签配置了引入的属性文件的属性值,这时取的就是 property 子标签中的value值。在 properties 中引入的配置文件信息以及property子标签中的配置的信息,在其他标签中可以使用 "${ }"占 位 符 的 方 式 来 获 取 , 在"{ }"中填写引入的配置文件中参数的name或者property子标签的name。例如:

 

setting配置

影响Mybatis框架在运行时的一些行为,在这就不详细介绍了,只需大致了解setting中包含了哪些设置,然后在需要用的时候,查看setting的文档即可。setting配置常用来实现缓存、延迟加载和分页设置。详细参考:MyBatis中settings属性配置详解

 

typeAliases配置

在MyBatis的SQL映射配置文件中,常使用parameterType、resultType之类的参数设置SQL语句的输入/输出参数,一般参数都是一个java类型的数据,有基本数据类型或引用数据类型,单数一般都要声明该类型的全路径名称,例如“java.lang.String”、“com.mybatis.domain.User”。而通过在typeAliases配置中声明该类的全路径名称,然后给它一个别名,在SQL映射配置文件中指定输入/输出参数类型时使用别名。

MyBatis还提供了批量定义别名的方法,指定包名即可,程序会为该包下的所有包装类加上别名。定义别名的规范就是对应包装类的类名首字母变成小写。

还可以通过注解的方式来实现@Alias("user")public class User {}  Mybatis已经为Java的常见类型默认指定了别名,可以直接使用。别名    映射的类型_byte    byte_long    long_short    short_int    int_integer    int_double    double_float    float_boolean    booleanstring    java.lang.Stringbyte    java.lang.Bytelong    java.lang.Longshort    java.lang.Shortint    java.lang.Integerinteger    java.lang.Integerdouble    java.lang.Doubleboolean    java.lang.Booleandate    java.util.Datedecimal    java.math.BigDecimalbigdecimal    java.math.BigDecimalobject    java.lang.Objectmap    java.util.Maphashmap    java.util.HashMaplist    java.util.Listarraylist    java.util.ArrayListcollection    java.util.Collectioniterator    java.util.Iterator可以从上面发现规律: 基本数据类型的别名是“_”加上基本数据类型的名称,引用数据类型的别名是数据类型的名称首字母小写。建议:在实体类中定义属性时尽量使用引用数据类型。在返回值是个List集合的时候,ResultType中还是写返回的list集合中对象的别名。

environments配置环境

 

environments中的default属性配置默认的环境,而environment中的id则是这个环境的id。数据管理器(transactionManager)有两种类型:分别是JDBC和MANAGED。配置为JDBC,相当于直接使用JDBC的提交和回滚设置。配置为MANAGED,则不提交和回滚连接,而是有容器来管理事务的生命周期。关于数据源(dataSource),在mybatis中有三种内建的数据源类型:分别是“UNPOOLED”、“POOLED”,与“JNDI”。其中UNPLOOED设置每次请求时打开和关闭连接,而POOLED可以设置一个管理数据库连接的资源池,用来合理控制数据库的连接与关闭次数,利用“池”的概念将JDBC连接对象组织起来。而JNDI则配置连接外部数据源的信息。

mappers配置分析

mappers标签下有多个mapper标签,每一个mapper标签中配置的都是一个独立的Mapper映射配置文件的路径。有以下几种配置方式:第一种,使用相对路径进行配置:

第二种,使用绝对路径进行配置:

第三种,使用接口信息进行配置:

第四种,使用接口所在包进行配置:

 

 

REF

https://www.cnblogs.com/emanlee/p/15720952.html

https://blog.csdn.net/qq_37745636/article/details/100676242

https://www.jianshu.com/p/b39b1520c903

https://baijiahao.baidu.com/s?id=1721665960375377102&wfr=spider&for=pc

查看原文