各位小伙伴
祝大家元旦快樂
開始我們今天的分享
我們已經(jīng)了解了?mybatis 框架的兩種使用方式以及主配置文件 (mybatis-config.xml) 的屬性。那么今天我們來一起了解sql 映射文件 (userMapper.xml) 的屬性。
parameterType 輸入?yún)?shù)
1)簡單類型的單個參數(shù)
我們來模擬一個需求:根據(jù)用戶 id 查詢用戶信息
先在接口類 UserMapper.Java 中,添加一個接口。
然后在對應的 UserMapper.xml 中,填寫 sql 查詢語句。
在測試類中測試一下。這個也沒什么說的我們最近一直都在測試這些。
2)簡單類型的多個參數(shù)
模擬需求:通過登錄名和密碼驗證用戶是否存在
先在接口類 UserMapper.Java 中,添加一個接口。這里需要添加兩個參數(shù)
然后在對應的 UserMapper.xml 中,填寫 sql 查詢語句。再添加兩個參數(shù)的時候可以在大括號里填上 0 代表第一個參數(shù),1 第二個參數(shù)以此類推。
在測試類中測試一下。
這是2個參數(shù),要是參數(shù)再多點,我們這樣一個個的標,很麻煩。這是就可以利用包裝對象,直接傳一個對象進去。
3)包裝類對象作為輸入?yún)?shù)進行查詢
模擬需求:根據(jù)界面輸入的用戶名稱或者登錄名稱來查詢符合條件的用戶列表。
先創(chuàng)建一個包裝類,包裝我們的 User 對象,這里就可以包裝很多參數(shù)了。
在接口類 UserMapper.Java 中,添加一個接口。
然后在對應的 UserMapper.xml 中,填寫 sql 查詢語句。
在測試類中測試一下。
再多的參數(shù)也不用怕了。
resultType/resultMap 對象
1)簡單類型的輸出? 例:Integer String ?Long 。
在接口類 UserMapper.Java 中,添加一個接口,查詢用戶總數(shù)。
然后在對應的 UserMapper.xml 中,填寫 sql 查詢語句。
在測試類中測試一下。
2)對象的輸出
我們之前做的都是對象輸出,給大家簡單的測試一下。
3)HashMap 的輸出
在接口類 UserMapper.Java 中,添加一個接口。
然后在對應的 UserMapper.xml 中,填寫 sql 查詢語句。
在測試類中測試一下。
這樣看著不方便,我把它復制出來大家看一下結果。
3)resultMap 對象輸出
這個是一個重點,假設我們的數(shù)據(jù)庫命名和我們的 Java 屬性命名是不一樣的,這樣我們就是映射不上,這個時候就需要手動設置一個 resultMap 來解決這個問題。
在接口類 UserMapper.Java 中,添加一個接口。
然后在對應的 UserMapper.xml 中,填寫 sql 查詢語句。
其中:
id 標簽代表數(shù)據(jù)庫表的主鍵
column 代表列名或者 sql 中的別名
property 代表 java 對象的屬性名?
在測試類中測試一下。
還是復制出來看一下。
這個resultMap很重要,大家多去試一下。至于有什么作用呢?我們之后會分享給大家的。
今天的分享就到這里了
伙伴們
元旦快樂
拜拜