Mybatis 全局配置文件中typeAliases(別名)


  在具體的mapper.xml文件中,定義很多的statement,statement需要parameterType指定輸入參數的類型、需要resultType指定輸出結果的映射類型。

 

  如果在指定類型時輸入類型全路徑,不方便進行開發,可以針對parameterType或resultType指定的類型定義一些別名,在mapper.xml中通過別名定義,方便開發。

 

一.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

 

 

如下圖所示:int就是別名;

 

二.自定義別名

  單個定義別名

 使用typeAliases標簽,定義別名;將cn.itcast.mybatis.po.User 起別名為user;

 

[html]  view plain  copy
 
 print?
  1.        <!-- 別名定義 -->  
  2. <typeAliases>  
  3.     <!-- 針對單個別名定義 type:類型的路徑 alias:別名 -->  
  4.     <typeAlias type="cn.itcast.mybatis.po.User" alias="user"/>  
  5. </typeAliases>  

 

 

  批量定義別名

  mybatis自動掃描包中的po類,自動定義別名,別名是類名(首字母大寫或小寫都可以,一般用小寫)

  例如:cn.itcast.mybatis.po.User起別名為User或者user;

 

[html]  view plain  copy
 
 print?
  1. <!-- 別名定義 -->  
  2. <typeAliases>  
  3.     <!-- 批量別名定義,指定包名,mybatis自動掃描包中的po類,自動定義別名,別名是類名(首字母大寫或小寫都可以,一般用小寫) -->  
  4.     <package name="cn.itcast.mybatis.po" />  
  5. </typeAliases>  

 

在mapper.xml文件中

  沒有定義別名前

 

[html]  view plain  copy
 
 print?
  1. <select id="findUserById" parameterType="int"  
  2.     resultType="cn.itcast.mybatis.po.User">  
  3.     select * from USER where id = #{id}  
  4. </select>  

 

  定義別名后,直接resultType中使用別名user;

 

[html]  view plain  copy
 
 print?
  1. <select id="findUserById" parameterType="int"  
  2.     resultType="user">  
  3.     select * from USER where id = #{id}  
  4. </select>  

 

 

三.總結:

  使用別名就像數據庫中的別名一樣,簡化了我們的操作,可以用簡單的名詞,單詞對象的整個路徑。操作起來更加方便,清晰;

 

引用:http://blog.csdn.net/fxq8866/article/details/52635153?foxhandler=RssReadRenderProcessHandler


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM