1. 程式人生 > 實用技巧 >Mybatis的類型別名(typeAliases)

Mybatis的類型別名(typeAliases)

不使用別名

使用別名,別名不區分大小寫

第1種:配置指定類的別名

第2種:指定包下取別名

第3種:註解取別名


先來官網Mybatis官網

不使用別名

在Mybatis中,sql的配置檔案中,不使用別名的時候,對映需要所要對映類的全限定類名路徑,如

這樣,如果sql比較多的時候,每次都要寫全限定類名,顯得很不方便,於是我們就有了使用類型別名(typeAliases)

使用別名,別名不區分大小寫

Mybatis中,型別可以取別名,這樣sql對映的時候可以使用別名,而不再需要些全限定類名路徑,直接使用別名即可。

先看官方文件

我們就知道取別名的方式有3種

第1種:配置指定類的別名

我們在核心配置檔案中給指定的類使用別名

我們的別名是dept1,再看響應的sql對映檔案,對映的時候,我使用了別Dept,就會報紅,因為我們根本就沒有別名Dept

我們使用DPt1,就正常了,因為別名不區分大小寫,程式也能正常執行

第2種:指定包下取別名

如果類比較多的時候,我們也可以指定包下的類取別名,這樣就不需要為每個類取別名了,指定包方式的別名預設為類名

這裡我們指定了pojo包下的類取別名

所以sql大的對映檔案提示了2個別名,取任何一個都可以

第3種:註解取別名

使用註解@Alias(別名)在類名上,為類名取別名

我在Dept類上使用註解@Alias,為這個類取了一個別名myDept

我們使用核心配置檔案裡的別名試一下

先使用配置指定類的別名dept1

對映成功

再使用指定包下取別名dept,報錯了,找不到這個別名

再使用註解取的別名myDept,對映成功

也說是說,使用註解@Alias取別名的時候,使用指定包下取別名就無效了。