天天看點

MyBatis總結(六)--typeAliases屬性介紹1對單個類起别名2對一個包下面的所有類批量取别名

說明:

typeAliases别名處理器:是為 Java 類型設定一個短的名字,可以友善我們 引用某個類。

正常情況下不推薦使用該别名處理器,因為使用了别明處理器不友善直接觀察到所對應的類,在項目維護起來不友善

1對單個類起别名

在mybatis配置檔案中進行如下配置

<!-- 3、typeAliases:别名處理器:可以為我們的java類型起别名
			别名不區分大小寫
	-->
	<typeAliases>
		<!-- 1、typeAlias:為某個java類型起别名
				type:指定要起别名的類型全類名;預設别名就是類名小寫;employee
				alias:指定新的别名
		 -->
		 <typeAlias type="com.atguigu.mybatis.bean.Employee" alias="emp"/> 
	</typeAliases>           

在映射檔案中可如下使用

<select id="getEmpById" resultType="emp">
		select * from tbl_employee where id = #{id}
	</select>           

如果不使用typeAliases别名處理器則映射檔案該這麼配置

<select id="getEmpById" resultType="com.atguigu.mybatis.bean.Employee">
		select * from tbl_employee where id = #{id}
	</select>           

如果不手動置頂alias屬性值則預設為就是類名小寫;employee。mybatis配置檔案如下 

<typeAliases>
		 <typeAlias type="com.atguigu.mybatis.bean.Employee"/> 
	</typeAliases>           

則在映射檔案中該如下使用預設的别名

<select id="getEmpById" resultType="employee">
		select * from tbl_employee where id = #{id}
	</select>           

2對一個包下面的所有類批量取别名

配置檔案進行如下配置

MyBatis總結(六)--typeAliases屬性介紹1對單個類起别名2對一個包下面的所有類批量取别名

則映射檔案中該進行如下方式使用别名(使用類名小寫)

<select id="getEmpById" resultType="employee">
		select * from tbl_employee where id = #{id}
	</select>           

3注意:如果對一個類進行單獨的别名命名同時又對這個類所在包進行了批量命名。這個時候會報錯。

解決辦法:可以在這個類中添加注釋,起一個新的别名。在類中添加注釋方式如下。給這個類起了一個新别名emp

MyBatis總結(六)--typeAliases屬性介紹1對單個類起别名2對一個包下面的所有類批量取别名

在映射檔案中如下使用

<select id="getEmpById" resultType="emp">
		select * from tbl_employee where id = #{id}
	</select>           
MyBatis總結(六)--typeAliases屬性介紹1對單個類起别名2對一個包下面的所有類批量取别名

繼續閱讀