zoukankan      html  css  js  c++  java
  • 深入浅出Mybatis(六)别名使用

    前言

          上一篇介绍了mapper代理方法的使用,这个是我们开发的一个基础,这里小编向大家带来可以让程序员减少工作量的东西——别名,我们可以自己定义别名,也可以使用系统自带的别名,非常方便。

    Mybatis支持的别名

    Mybatis定义的别名

          在我们的java中已经自己定义了一些常用的数据类型,比如int,long,string等,所以在Mybatis中已经自己嵌入了这些的别名,我们只需要使用的时候来查询一下就可以很好的使用了。

    别名 映射的类型
    _byte byte
    _long long
    _short short
    _int int
    _integer int
    _double double
    _float float
    _boolean boolean
    string String
    byte Byte
    long Long
    short Short
    int Integer
    integer Integer
    double Double
    float Float
    boolean Boolean
    date Date
    decimal BigDecimal
    bigdecimal BigDecimal

    举例

          比如在UserMapper.xml文件中,以下定义的两个select语句,他们的运行结果是相同的,都没有错误,因为java.lang.String可以默认用别名string代替:

     

    <!-- 根据用户名,查询用户列表,支持模糊查询 --> 
    <select id="findUserByUsername" parameterType="string"
            resultType="com.dtt.mybatis.pojo.User"> 
    select * from user where username like '%${value}%' 
    </select>
    
    <!-- 根据用户名,查询用户列表,支持模糊查询 --> 
    <select id="findUserByUsername" parameterType="java.lang.String"
            resultType="com.dtt.mybatis.pojo.User"> 
    		select * from user where username like '%${value}%' 
    </select>
    

     自定义别名

    自定义别名需要我们在SqlMapConfig.xml全局配置文件中进行配置。


          在SqlMapConfig.xml配置文件中,有一个typeAliases属性,这个属性就是配置别名所用到的。在这个标签下可以配置单个别名,也可以批量定义别名,批量定义的时候会扫描整个包下的类,别名为包下的类的名字(大小写都可以),比如我在cn.itcast.mybatis.po包下有一个类,叫做AresKing.java
    ,当我定义批量别名的时候,这个类的别名就可以叫做AresKing或者aresKing。

    <typeAliases>
     <!-- 单个别名定义 --> 
     <typeAlias alias="user" type="com.dtt.mybatis.pojo.User"/> 
     <!-- 批量别名定义,扫描整个包下的类,别名为类名(首字母大写或小写都可以) --> 
    <package name="com.dtt.mybatis.pojo"/> 
     <package name="其它包"/> 
     </typeAliases> 
    

    小结

          别名最初是在数据库中接触到的,后来发现在任何有计算机的地方都可以用别名来代替一些东西,这样就方便,有好用,程序员可以减少很多的工作量,效果也很棒。

  • 相关阅读:
    VS2010安装Nuget提示签名不匹配错误解决办法
    vs2010不能正确加载 'VSTS for Database Professionals Sql Server Datatier Application'包
    [改编]如何理解.NET Framework(CLI,CLS,CTS,CLR,FCL,BCL)
    [导入]google翻译 lcs
    [导入]Visual SourceSafe中的权限 lcs
    [导入]EnterpriseLibrary 3.1 第一次下载.安装,读取数据库,绑定到控件成功. lcs
    [导入]在缓存时使用SqlCacheDependency lcs
    windows 2008 成功 激活 lcs
    [导入]DIV弹出对话框 lcs
    开发小记4 lcs
  • 原文地址:https://www.cnblogs.com/mtime2004/p/9896758.html
Copyright © 2011-2022 走看看