MyBatis的自定义别名和内置别名



自定义别名的两种方式:

 
一、给类(java文件)取别名

 
 

  <!-- 
        别名的第一种方式,为Users类取别名
        这种方式比较直观,把一个type直接用短名字表示,这个配置是在mybatis的config.xml里面配置的,在mapper.xml使用别名Users就可以了

   -->


<
typeAliases> <typeAlias type="cn.itsors.domain.Users" alias="Users"/>
</typeAliases>

 


二.写一个包名

   <!-- 
        别名的第二种方式,只要写一个包名,mybatis就会扫描这个包里的类,在mapper.xml使用包中的类名Users(类名不区分大小写)就可以了
      -->
     <typeAliases>
        <package name="cn.itsors.domain"/> 
   </typeAliases>

 


使用别名:

没有别名时的 resultType为 包名+类名:(cn.itsors.domain.Users

<!--
  resultType:执行这段sql后结果值的类型是Users(result 翻译 结果值)
  parameterType:执行这段sql传的参数类型long(long内置别名(下面有内置别名的列表),意思就是参数是Long数据型)
  #{id}:就是传的参数。
-->
<
select id="selectAllUser" parameterType="long" resultType="cn.itsors.domain.Users">
     select * from t_user where id = #{id}
</select>

 

使用别名时resultType直接用别名:

<!--
   注意这里的 resultType 返回值类型是集合内存储数据的类型,不是 'list'
    个人理解:最终存储数据的是对象Users,而list是存储Users对象的集合,
         所以查询后的结果数据是被User存储的,所以resultType的类型是Users而不是list
         详情请看https://blog.csdn.net/codejas/article/details/79520246
-->

<select id="selectAllUser" resultType="Users"> select * from t_user </select>

 

内置别名:

  对于引用数据类型,都是将大写字母转小写,比如 HashMap 对应的别名是 'hashmap'

  基本数据类型考虑到重复的问题,会在其前面加上 '_',比如 int 对应的别名是 '_int'

  

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM