zoukankan      html  css  js  c++  java
  • MyBatis(3.2.3)

    In the SQL Mapper configuration file, we need to give the fully qualified name of the JavaBeans for the resultType and parameterType attributes.

    An example is as follows:

    <select id="findStudentById" parameterType="int" resultType="com.mybatis3.domain.Student">
        SELECT STUD_ID AS ID, NAME, EMAIL, DOB FROM STUDENTS WHERE STUD_ID=#{Id}
    </select>
    <update id="updateStudent" parameterType="com.mybatis3.domain.Student">
        UPDATE STUDENTS SET NAME=#{name}, EMAIL=#{email}, DOB=#{dob} WHERE STUD_ID=#{id}
    </update>

    Here we are giving the fully qualified name of the Student type com.mybatis3.domain.Student for the resultType and parameterType attributes.

    Instead of typing the fully qualified names everywhere, we can give the alias names and use these alias names in all the other places where we need to give the fully qualified names.

    An example is as follows:

    <typeAliases>
        <typeAlias alias="Student" type="com.mybatis3.domain.Student"/>
        <typeAlias alias="Tutor" type="com.mybatis3.domain.Tutor"/>
        <package name="com.mybatis3.domain"/>
    </typeAliases>

    Now in the SQL Mapper file, we can use the alias name Student as follows:

    <select id="findStudentById" parameterType="int" resultType="Student">
        SELECT STUD_ID AS ID, NAME, EMAIL, DOB FROM STUDENTS WHERE STUD_ID=#{id}
    </select>
    <update id="updateStudent" parameterType="Student">
        UPDATE STUDENTS SET NAME=#{name}, EMAIL=#{email}, DOB=#{dob} WHERE STUD_ID=#{id}
    </update>

    Instead of giving an alias name for each JavaBeans separately, you can give the package name where MyBatis can scan and register aliases using uncapitalized, nonqualified class names of the Bean.

    An example is as follows:

    <typeAliases>
        <package name="com.mybatis3.domain"/>
    </typeAliases>

    If there are Student.java and Tutor.java Beans in the com.mybatis3.domain package, com.mybatis3.domain.Student will be registered as student and com.mybatis3.domain.Tutor will be registered as tutor.

    An example is as follows:

    <typeAliases>
        <typeAlias alias="Student" type="com.mybatis3.domain.Student"/>
        <typeAlias alias="Tutor" type="com.mybatis3.domain.Tutor"/>
        <package name="com.mybatis3.domain"/>
        <package name="com.mybatis3.webservices.domain"/>
    </typeAliases>

    There is another way of aliasing JavaBeans, using the @Alias annotation.

    @Alias("StudentAlias")
    public class Student {
        // ...  
    }

    The @Alias annotation overrides the <typeAliases> configuration.

  • 相关阅读:
    Oracle 11G单机 无网络环境静默安装
    Centos 7 编译安装llvm 8.0.0
    linux下测试读写
    Linux 初始化 init 系统(1):sysvinit
    自动挂载文件/etc/fstab功能详解
    虚拟机安装LINUX网络配置注意的问题
    rhel7报错整理
    16/4/4二代支付硬盘故障处理
    RedHat Enterprise Linux 7关闭防火墙方法
    Linux命令之awk数组使用范例
  • 原文地址:https://www.cnblogs.com/huey/p/5227538.html
Copyright © 2011-2022 走看看