zoukankan      html  css  js  c++  java
  • Java -- MyBatis学习笔记10、主配置文件

    1、Properties标签的使用

    在使用 properties 标签配置时,我们可以采用两种方式指定属性配置。

    1.1、直接给出值

    <environments default="mysql">
            <environment id="mysql">
                <transactionManager type="jdbc"></transactionManager>
                <dataSource type="POOLED">
                    <property name="driver" value="com.mysql.jdbc.Driver"/>
                    <property name="url" value="jdbc:mysql://localhost:3306/StudentManage"/>
                    <property name="username" value="root"/>
                    <property name="password" value="root"/>
                </dataSource>
            </environment>
    </environments>
    

    1.2、使用数据库属性配置文件

    为了方便对数据库连接的管理,DB连接四要素数据一般都是存放在一个专门的属性文件中的。MyBatis主配置文件需要从这个属性文件中读取这些数据。

    • 在resources目录创建jdbc.properties文件,文件名称自定义:
    driver = com.mysql.jdbc.Driver
    url = jdbc:mysql://localhost:3306/StudentManage
    username = root
    password = root
    
    • 使用properties标签、在configuration标签下边添加:
    <properties resource="jdbc.properties"/>
    
    • 使用Key指定值:
    <environments default="mysql">
            <environment id="mysql">
                <transactionManager type="jdbc"></transactionManager>
                <dataSource type="POOLED">
                    <!-- 使用properties文件 : 语法 ${key}-->
                    <property name="driver" value="${driver}"/>
                    <property name="url" value="${url}"/>
                    <property name="username" value="${username}"/>
                    <property name="password" value="${password}"/>
                </dataSource>
            </environment>
    </environments>
    

    2、typeAliases别名

    由于类的全限定名称很长,需要大量使用的时候,总写那么长的名称不方便。在 MyBatis 中允许定义一个简写来代表这个类,这就是别名。Mybatis支持默认别名,我们也可以采用自定义别名方式来开发,主要使用在<select resultType="别名">

    • mybatis.xml主配置文件定义别名:
    <typeAliases>
        <!--
        定义单个类型的别名
        type: 类型的全限定名称
        alias: 自定义别名
        -->
        <typeAlias type="com.rg.entity.UserInfo" alias="User"/>
        <!--
        批量定义别名,扫描整个包下的类,别名为类名(首字母大写或小写都可以)
        name: 包名
        -->
        <package name="com.rg.entity"/>
        <package name="... 其他包"/>
    </typeAliases>
    
    • mapper.xml映射文件:
    <insert id="insert" parameterType="User">
            insert into UserInfo(Name,Age) values(#{Name},#{Age})
    </insert>
    <!-- 或者: -->
    <insert id="insert" parameterType="UserInfo">
            insert into UserInfo(Name,Age) values(#{Name},#{Age})
    </insert>
    <!-- 因为package是直接扫描整个包下所以类。 -->
    

    3、mappers映射器

    MyBatis是基于sql映射配置的框架,sql语句都写在 Mapper 配置文件中,当构建SqlSession类之后,就需要去读取 Mapper配置文件中的sql配置。而mappers标签就是用来配置需要加载的sql映射配置文件路径的。

    • <mapper resource="" />
    <!-- 使用相对于类路径的资源,从 classpath 路径查找文件 -->
    <!--从classes下开始-->
    <mapper resource="com/rg/dao/UserInfoDao.xml"/>
    
    • <package name=""/>
    <!-- 指定包下的所有 Dao 接口 -->
    比如:<package name="com.bjpowernode.dao"/>
    <!-- 注意:此种方法要求 Dao 接口名称和 mapper 映射文件名称相同,且在同一个目录中。 -->
    
  • 相关阅读:
    27 Spring Cloud Feign整合Hystrix实现容错处理
    26 Spring Cloud使用Hystrix实现容错处理
    25 Spring Cloud Hystrix缓存与合并请求
    24 Spring Cloud Hystrix资源隔离策略(线程、信号量)
    23 Spring Cloud Hystrix(熔断器)介绍及使用
    22 Spring Cloud Feign的自定义配置及使用
    21 Spring Cloud使用Feign调用服务接口
    20 Spring Cloud Ribbon配置详解
    19 Spring Cloud Ribbon自定义负载均衡策略
    18 Spring Cloud Ribbon负载均衡策略介绍
  • 原文地址:https://www.cnblogs.com/dcy521/p/14749092.html
Copyright © 2011-2022 走看看