自定義別名的兩種方式:
一、給類(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'