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 映射文件名称相同,且在同一个目录中。 -->
    
  • 相关阅读:
    javaScript系列 [06]-javaScript和this
    javaScript系列 [05]-javaScript和JSON
    javaScript系列 [04]-javaScript的原型链
    javaScript系列 [03]-javaScript原型对象
    javaScript系列 [02]-javaScript对象探析
    javaScript系列 [01]-javaScript函数基础
    jQuery系列 第八章 jQuery框架Ajax模块
    jQuery系列 第七章 jQuery框架DOM操作
    jQuery系列 第六章 jQuery框架事件处理
    jQuery系列 第五章 jQuery框架动画特效
  • 原文地址:https://www.cnblogs.com/dcy521/p/14749092.html
Copyright © 2011-2022 走看看