Mybatis-配置文件基础讲解

配置文件详解

本文讲解使用Mybatis的基础配置文件配置,详细配置请参考官网

  • Environments 指定数据环境
    • environment 自定义环境
      • transactionManager 事务管理(JDBC|UNMANAGED)
      • dataSource 数据源配置
  • properties 指定外部,默认属性
    • resource:指定相对于classpath路径的配置文件
    • 配置文件内使用el表达式获取外部配置${jdbc.url}
  • typeAliases 类型别名
    • 指定类型别名,在mapper中可以写别名而不用写全限定类名
  • mappers 指定SQL映射文件路径
    • resource 相对classpath路径
    • url 系统绝对路径
    • class 注册接口全限定类名 (会扫描XML和注解)
    • package 注册,指定包下所有接口 (会扫描XML和注解)
<configuration>
    <!--指定外部配置 resource相对classpath路径, url系统绝对路径-->
    <properties resource="jdbc.properties">
        <!--此处也可以指定 -->
        <property name="jdbc.password" value="ro2t"/>
    </properties>
    <!-- 属性文件读取优先级顺序
    如果一个属性在不只一个地方进行了配置,那么,MyBatis 将按照下面的顺序来加载:
        首先读取在 properties 元素体内指定的属性。
        然后根据 properties 元素中的 resource 属性读取类路径下属性文件,或根据 url 属性指定的路径读取属性文件,并覆盖之前读取过的同名属性。
        最后读取作为方法参数传递的属性,并覆盖之前读取过的同名属性。
    因此,通过方法参数传递的属性具有最高优先级,resource/url 属性中指定的配置文件次之,最低优先级的则是 properties 元素中指定的属性。
    -->


    <settings>
        <!--开启后,mybatis复杂映射,通过指定select属性嵌套查询,会进行懒查询:即只有在使用子查询数据时候,才去数据库查询数据-->
        <setting name="lazyLoadingEnabled" value="true"/>
    </settings>

    <typeAliases>
        <!--指定单个类别名-->
        <typeAlias type="com.wjy.polo.User" alias="user"/>
        <!--指定包下所有类,默认创建别名,别名为实体类名,不区分大小写-->
        <!--<package name="com.wjy.polo"/>-->
    </typeAliases>


    <!--数据源环境-->
    <environments default="dev">
        <environment id="dev">
            <!--事务管理配置 指定 [
            JDBC 直接使用了 JDBC 的提交和回滚设施
            MANAGED 它从不提交或回滚一个连接,而是让容器来管理事务的整个生命周期(比如 JEE 应用服务器的上下文)
            ]-->
            <transactionManager type="JDBC"/>
            <!--数据源配置 type[
            UNPOOLED 这个数据源的实现会每次请求时打开和关闭连接
            POOLED 利用“池”的概念将 JDBC 连接对象组织起来,可复用连接
            JNDI 是为了能在如 EJB 或应用服务器这类容器中使用
            ]-->
            <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>


    <!--Mapper文件配置指定-->
    <mappers>
        <!--相对classpath路径-->
        <!-- <mapper resource="UserMapper.xml"/> -->
        <!--系统绝对路径-->
        <!--<mapper url="file:///var/mapper/UserMapper.xml"/>-->
        <!--
            使用映射器接口实现类的完全限定类名
            (会扫描XML和注解)
            要求接口和映射文件,同包,同名
        -->
        <!-- <mapper class="com.wjy.dao.IUserDao"/> -->
        <!--
            推荐使用
            将包内的映射器接口实现全部注册为映射器
            (会扫描XML和注解)
            要求接口和映射文件,同包,同名
        -->
        <package name="com.wjy.dao"/>
    </mappers>
</configuration>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值