下面將在用戶和賬戶進行一對一查詢的基礎上進行介紹SpringBoot集成Mybatis實現多表查詢的基於xml的兩種方式。
首先我們先創建兩個數據庫表,分別是user用戶表和account賬戶表
user表:
account表:
然后創建實體類
**第一種通過創建子類的方式查詢
需求:查詢所有的用戶基礎信息以及其所屬的賬戶中的金額
1.創建想要得到多表查詢數據的實體類(子類)
2.創建對應的Dao以及Service及實現類
3.xml中寫實現查詢的sql語句
4.編寫控制器並訪問資源路徑
訪問資源路徑:
**第二種通過建立實體類關系方式查詢
需求:查詢所有賬戶及其所屬用戶的所有基礎用戶信息
這種方式也是目前為止最為常用的一種方式,許多教學教程上也都采用了這種方式,那么我們一起來看看。
首先這種方式不需要向第一種方式那樣創建一個子類用來封裝查詢的結果集,但從表實體應該包含一個主表實體的對象引用
只需要在Account實體類中增加一個user屬性即可,並生成對應的getter和setter方法。修改如下:
接下來是在xml中進行映射實體類關系
對應的dao和service就不再具體截圖出來了,接下來是控制器(也沒變化)。
接下來訪問資源路徑:
總結:
兩種方式都是對實體類進行了一些調整,第二種用了跟實體類建立了映射關系,關於Mybatis中實體類屬性與數據庫列表間映射方法可以看后面的隨筆。