SqlMapConfig.xml配置文件(mybatis 主配置文件)

SqlMapConfig.xml配置文件

1  .  配置内容


SqlMapConfig.xml中配置的内容和顺序如下:

properties(属性)
settings(全局配置参数)
typeAliases(类型别名)
typeHandlers(类型处理器)
objectFactory(对象工厂)
plugins(插件)
environments(环境集合属性对象)
environment(环境子属性对象)
transactionManager(事务管理)
dataSource(数据源)
mappers(映射器)

2. properties(属性)

SqlMapConfig.xml可以引用java属性文件中的配置信息如下:

在classpath下定义jdbc.properties


jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8
jdbc.username=root
jdbc.password=123456

SqlMapConfig.xml引用如下:


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--引入外部配置文件-->
    <properties resource="jdbc.properties"></properties>

    <!--
        环境配置
        default:标识使用的默认环境
    -->
    <environments default="development">
        <!--定义一个环境配置-->
        <environment id="development">
            <transactionManager type="JDBC"/>

            <!--数据源配置-->
            <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>
        <mapper resource="com/itheima/mapper/UserMapper.xml"/>
    </mappers>
</configuration>

注意: MyBatis 将按照下面的顺序来加载属性:

  • 使用 properties 元素加载的外部属性文件优先级最高。
  • 然后会读取properties 元素中resource加载的属性,它会覆盖已读取的同名属性。

3. typeAliases(类型别名)

      mybatis支持别名:

别名映射的类型
_bytebyte
_longlong
_shortshort
_intint
_integerint
_doubledouble
_floatfloat
_booleanboolean
stringString
byteByte
longLong
shortShort
intInteger
integerInteger
doubleDouble
floatFloat
booleanBoolean
dateDate
decimalBigDecimal
bigdecimalBigDecimal
mapMap

这是之前我们讲的Mybatis支持的默认别名,我们也可以采用自定义别名方式来开发。

4.3.2 自定义别名:

在SqlMapConfig.xml中配置:


<typeAliases>
    <!-- 单个别名定义 -->
    <typeAlias alias="user" type="com.itheima.domain.User"/>
    <!-- 批量别名定义,扫描整个包下的类,别名为类名(首字母大写或小写都可以) -->
    <package name="com.itheima.domain"/>
    <package name="其它包"/>
</typeAliases>

4. mappers(映射器)

Mapper配置的几种方法:

4.1 < mapper resource=" " />

      使用相对于类路径的资源

      如:< mapper resource="com/itheima/dao/UserMapper.xml" />

4.2 < mapper class=" " />

      使用mapper接口类路径

      如:< mapper class="com.itheima.dao.UserMapper"/>

      注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。

4.3 < package name=""/>

       注册指定包下的所有mapper接口

        如:< package name="cn.itcast.mybatis.mapper"/>

        注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。

 


版权声明:本文为weixin_35674711原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。