【MyBatis】MyBatis-config标签详解

MyBatis配置文件标签详解

我们在使用MyBatis框架的时候需要一个配置文件——MyBatis-config.xml来告诉MyBatis我们所使用的数据类型以及Mappers所在的位置等信息,那么我们来看一下这个配置文件中大部分标签都代表了什么:

emmm这个配置文件是有模板的,我们可以去MyBatis官网下载和所使用依赖版本对应的MyBatis压缩包,在那个里面会找到一份说明文件:mybatis-版本号.pdf,或者你不想下载的话:mybatis – MyBatis 3 | 入门打开这个网站,你会得到你想要的一切说明。

configuration标签

我们所有的配置标签都会在这个大标签下配置,子标签是有顺序的,顺序不对会报错,顺序如下:

<!-- (properties?,settings?,typeAliases?,typeHandlers?,
      objectFactory?,objectWrapperFactory?,reflectorFactory?,
      plugins?,environments?,databaseIdProvider?,mappers?) -->

properties标签

这些属性可以在外部进行配置,并可以进行动态替换。你既可以在典型的 Java 属性文件中配置这些属性,也可以在 properties 元素的子元素中设置。例如JDBC驱动配置:

<properties resource="jdbc.properties"/>

typeAliases标签

以包为单位的形式,将该包下所有类型设置默认的类型别名,别名为类名,且不在区分大小写

<typeAliases>
	<package name="com.qcby.mybatis"/>
</typeAliases>

这里我就将com.qcby.mybatis这个包下面的的所有类文件都设置了类别名,这样在写Mapper映射文件鹅时候我们就可以将参数或者是返回值类型不再写成全名,而是别名,就像下面一样:

  • 未设置别名之前:

    在这里插入图片描述

  • 设置别名之后:

    在这里插入图片描述

下面是一些常见的别名书写方式:

别名映射的类型
_bytebyte
_char (since 3.5.10)char
_character (since 3.5.10)char
_longlong
_shortshort
_intint
_integerint
_doubledouble
_floatfloat
_booleanboolean
stringString
byteByte
char (since 3.5.10)Character
character (since 3.5.10)Character
longLong
shortShort
intInteger
integerInteger
doubleDouble
floatFloat
booleanBoolean
dateDate
decimalBigDecimal
bigdecimalBigDecimal
bigintegerBigInteger
objectObject
date[]Date[]
decimal[]BigDecimal[]
bigdecimal[]BigDecimal[]
biginteger[]BigInteger[]
object[]Object[]
mapMap
hashmapHashMap
listList
arraylistArrayList
collectionCollection
iteratorIterator

environments标签

  • environment: 配置某个具体的环境
  • 属性: id 表示链接数据库的环境的唯一标识 不能重复

environment标签

environments下的子标签

  • environment: 配置某个具体的环境
  • 属性: id 表示链接数据库的环境的唯一标识 不能重复

transactionManager标签

environments下的子标签

  • transactionManager: 配置数据库事务管理器
  • 属性: type=“JDBC|MANAGED”
    • JDBC:使用JDBC的方式管理事务,事务的提交或回滚需要手动处理
    • MANAGED:使用容器的方式管理事务(例如Spring),此时会自动提交或回滚事务

dataSource标签

  • dataSource: 配置数据源
  • 属性: type=“UNPOOLED|POOLED|JNDI”
    • UNPOOLED:不配置连接池,直接使用数据库连接
    • POOLED:配置数据库连接池,使用数据库连接池管理数据库连接
    • JNDI:配置JNDI服务器,使用上下文的数据库连接池管理数据库连接
<environments default="mysql">
    <!--
        environment: 配置某个具体的环境
        属性: id 表示链接数据库的环境的唯一标识 不能重复
    -->
    <environment id="mysql">
        <!--
            transactionManager: 配置数据库事务管理器
            属性: type="JDBC|MANAGED"
                 JDBC:使用JDBC的方式管理事务,事务的提交或回滚需要手动处理
                 MANAGED:使用容器的方式管理事务(例如Spring),此时会自动提交或回滚事务
        -->
        <transactionManager type="JDBC"/>
        <!--
            dataSource: 配置数据源
            属性: type="UNPOOLED|POOLED|JNDI"
                 UNPOOLED:不配置连接池,直接使用数据库连接
                 POOLED:配置数据库连接池,使用数据库连接池管理数据库连接
                 JNDI:配置JNDI服务器,使用上下文的数据库连接池管理数据库连接
        -->
        <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>

mappers标签

  • mappers: 以包为单位引入映射文件
  • 满足两个要求:
    1. Mapper接口所在的包要和映射文件所在的包一致
    2. Mapper接口要和映射文件的名字一致
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值