zoukankan      html  css  js  c++  java
  • Mybatis中对象别名的几种方式

    1 使用包名,则Alias默认为对象简单类名,其中第一个字母替换为小写

    package org.apache.ibatis.demo.entity;
    
    /**
     * @author zerods
     */
    public class TDemoDO {
        Integer id;
        String name;
    
        // ...
    }
    
    
    <!-- Configuration.xml -->
    <typeAliases>
          <package name="org.apache.ibatis.demo.entity"/>
    </typeAliases>
    
      注释:这里的TDemoDO别名默认为tDemoDO
    
    <!-- mapper.xml -->
    <resultMap id="baseMap" type="tDemoDO">
        <result property="id" column="id" jdbcType="INTEGER" />
        <result property="name" column="name" jdbcType="VARCHAR" />
    </resultMap>
    

    2 使用全限定类名,xml中配置Alias

    public class TDemoDO {
        Integer id;
        String name;
        // ...
    }
    
    <!-- Configuration.xml -->
    <typeAliases>
        <typeAlias type="org.apache.ibatis.demo.entity.TDemoDO" alias="tDemo" />
    </typeAliases>
    
    <!-- mapper.xml -->
    <resultMap id="baseMap" type="tDemo">
        <result property="id" column="id" jdbcType="INTEGER" />
        <result property="name" column="name" jdbcType="VARCHAR" />
    </resultMap>
    

    3 使用全限定类名 + @Alias

    @Alias("tDemo")
    public class TDemoDO {
        Integer id;
        String name;
        // ...
    }
    
    <!-- Configuration.xml -->
    <typeAliases>
        <typeAlias type="org.apache.ibatis.demo.entity.TDemoDO"  />
    </typeAliases>
    
    <!-- mapper.xml -->
    <resultMap id="baseMap" type="tDemo">
        <result property="id" column="id" jdbcType="INTEGER" />
        <result property="name" column="name" jdbcType="VARCHAR" />
    </resultMap>
    

    4 使用package + @Alias

    @Alias("tDemo")
    public class TDemoDO {
        Integer id;
        String name;
        // ...
    }
    
    <!-- Configuration.xml -->
    <typeAliases>
          <package name="org.apache.ibatis.demo.entity"/>
    </typeAliases>
    
    <!-- mapper.xml -->
    <resultMap id="baseMap" type="tDemo">
        <result property="id" column="id" jdbcType="INTEGER" />
        <result property="name" column="name" jdbcType="VARCHAR" />
    </resultMap>
    

    总结: 个人觉得使用package + Alias注解的方式最为优雅,也方便管理

  • 相关阅读:
    monads-are-elephants(转)
    程序语言简史(转)
    语法的省略不能造成编译器的歧义
    scala getter and setter
    隐式类型转换
    java 调用 scala
    列表的操作
    Scala HandBook
    Scala 高级编程练习
    Net 2.0 C# 专用的只读类Tuple
  • 原文地址:https://www.cnblogs.com/zerodsLearnJava/p/12939239.html
Copyright © 2011-2022 走看看