MyBatis —— 2、核心配置文件详解

目录

1、核心配置文件主要标签详解 

2、设置连接数据库的参数从properties中读取

3、typeAliases 标签设置别名

4、mappers 标签


1、核心配置文件主要标签详解 

核心配置文件中的标签必须按照固定的顺序(有的标签可以不写,但顺序一定不能乱):
properties、settings、typeAliases、typeHandlers、objectFactory、objectWrapperFactory、reflectorFactory、plugins、environments、databaseIdProvider、mappers

<?xml version="1.0" encoding="UTF-8" ?>
<!-- MyBatis配置文件中的约束 -->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

    <!--
        MyBatis核心配置文件中,标签的顺序:
            properties?,settings?,typeAliases?,typeHandlers?,
            objectFactory?,objectWrapperFactory?,reflectorFactory?,
            plugins?,environments?,databaseIdProvider?,mappers?
    -->

    <!-- 将 properties 资源包引入到核心配置文件中,以便用 ${} 来获取配置数据库的参数 -->
    <properties resource="jdbc.properties"></properties>

    <settings>
        <!--将表中字段的下划线自动转换为驼峰-->
        <setting name="mapUnderscoreToCamelCase" value="true"/>
        <!--开启延迟加载-->
        <setting name="lazyLoadingEnabled" value="true"/>
    </settings>

    <typeAliases>
        <!--
            设置类型别名(别名不区分大小写)
                type:设置需要设置别名的类型(需要全类名)
                alias:可写可不写,若不写,则默认为其类名(不是全类名)
        -->
        <!--<typeAlias type="com.zyj.mybatis.pojo.User" alias="User"></typeAlias>-->

        <!-- 以包为单位,将包下所有的类型设置默认的类型别名(即类名,且不区分大小写) -->
        <package name="com.zyj.mybatis.pojo"/>
    </typeAliases>

    <!--
        environments:配置多个连接数据库的环境
            default:设置默认使用的环境id,当配置了多个环境时,使用的环境是default对应的环境的id
    -->
    <environments default="development">
        <!--
            environment:配置某个具体的环境
                id:表示连接数据库的环境的唯一标识,不能重复
        -->
        <environment id="development">
            <!--
                transactionManager:设置事务管理方式
                    type:有两种值,一个是JDBC,还有一个是MANAGED
                        JDBC:表示当前环境中,执行SQL时,使用的是JDBC中原生的事务管理方式(事务的提交或回滚需要手动处理)
                        MANAGER:表示被管理,例如spring
            -->
            <transactionManager type="JDBC"/>
            <!--
                dataSource:配置数据源
                    type:设置数据源的类型,有三种值:POOLED、UNPOOLED、JNDI
                        POOLED:表示数据库连接池缓存数据库连接
                        UNPOOLED:表示不适用数据库连接池
                        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>
        <!-- 一个一个引入映射文件 -->
        <!--<mapper resource="mappers/UserMapper.xml"/>-->

        <!--
            以包为单位引入映射文件
                要求:
                1、mapper所在的包要和映射文件所在的包一致
                2、mapper要和映射文件的名字一致
        -->
        <package name="com.zyj.mybatis.mapper"/>
    </mappers>
</configuration>

2、设置连接数据库的参数从properties中读取

① 首先创建资源包,位置如下 src/main/resources/jdbc.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis
jdbc.username=root
jdbc.password=zyj123

② 将 properties 资源包引入到核心配置文件中,在核心配置文件中添加内容:

    <!-- 将 properties 资源包引入到核心配置文件中 -->
    <properties resource="jdbc.properties"></properties>

③ 将核心配置文件中设置连接数据库的参数改为使用 jdbc.properties 中的键值对

            <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>

3、typeAliases 标签设置别名

typeAliases 标签可以用来设置类的别名,在 map 接口对应的映射文件中写 SQL 语句时,若 resultType 所需的全类名较长时,我们可以设置较短的别名 

    <typeAliases>
        <!--
            设置类型别名(别名不区分大小写)
                type:设置需要设置别名的类型(需要全类名)
                alias:可写可不写,若不写,则默认为其类名(不是全类名)
        -->
        <!--<typeAlias type="com.zyj.mybatis.pojo.User" alias="User"></typeAlias>-->

        <!-- 以包为单位,将包下所有的类型设置默认的类型别名(即类名,且不区分大小写) -->
        <package name="com.zyj.mybatis.pojo"/>
    </typeAliases>

4、mappers 标签

在引入映射文件时,若有多个映射文件,我们可以通过 package 标签将对应目录下的映射文件全部引入。

要求:
                1、mapper所在的包要和映射文件所在的包一致
                2、mapper要和映射文件的名字一致 

① 首先创建映射文件存放的目录(注意:若要一次创建多层目录,目录之间的分隔符不是 ' . ',而是 ' / '),创建的包如下图

 ② 在核心映射文件中进行配置

    <!-- 引入映射文件 -->
    <mappers>
        <!-- 一个一个引入映射文件 -->
        <!--<mapper resource="mappers/UserMapper.xml"/>-->

        <!--
            以包为单位引入映射文件
                要求:
                1、mapper所在的包要和映射文件所在的包一致
                2、mapper要和映射文件的名字一致
        -->
        <package name="com.zyj.mybatis.mapper"/>
    </mappers>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值