很多時候我們有這樣的需求,資料庫的字段名與實體類的屬性名不一緻,這個時候我們需要怎麼做呢?有兩種解決方案,第一種:直接在查詢的時候使用别名,将别名設定成與實體類的屬性名一緻。第二種:使用resultType,自己定義映射關系。
整個項目的目錄如下:

首先,我們需要搭建資料庫mysql環境(test.sql),id我們寫成了sid,name我們寫成了sname,age我們寫成了sage:
Student.class實體類:
pom.xml:
主配置檔案mybatis.xml:
資料庫配置檔案(jdbc_mysql.properties):
日志配置檔案 log4j.prperties:
使用到的工具類(MyBatisUtils.java):
接口定義(IStudentDao.java):
接口實作類(StudentDaoImpl.class):
最主要的mapper檔案:
可以直接使用别名:
或者可以自己定義映射:
需要注意的點:
有一個id屬性,這個是在其他地方使用的時候的id Type - 實體類,可以寫别名,要不就要寫帶全路徑的類名 id - 标簽是為了标記出作為 ID 的結果可以幫助提高整體性能 result – 注入到字段或 JavaBean 屬性的普通結果 association – 一個複雜類型的關聯;許多結果将包裝成這種類型嵌套結果映射 – 關聯可以指定為一個 resultMap 元素,或者引用一個 collection – 一個複雜類型的集合 嵌套結果映射 – 集合可以指定為一個 resultMap 元素,或者引用一個 discriminator – 使用結果值來決定使用哪個 resultMap case – 基于某些值的結果映射 嵌套結果映射 – 一個 case 也是一個映射它本身的結果,是以可以包含很多相 同的元素,或者它可以參照一個外部的 resultMap。 如果對象名與屬性名一緻,我們可以不把它寫入
測試類MyTest.class:
【作者簡介】:
秦懷,公衆号【秦懷雜貨店】作者,技術之路不在一時,山高水長,縱使緩慢,馳而不息。這個世界希望一切都很快,更快,但是我希望自己能走好每一步,寫好每一篇文章,期待和你們一起交流。
此文章僅代表自己(本菜鳥)學習積累記錄,或者學習筆記,如有侵權,請聯系作者核實删除。人無完人,文章也一樣,文筆稚嫩,在下不才,勿噴,如果有錯誤之處,還望指出,感激不盡~