mybatis中傳入基本型別引數,傳入多個基本資料型別
阿新 • • 發佈:2019-02-19
mybatis3.2.6+spring4.0.2 關於傳入基本引數型別 以及多個基本型別引數的問題
最近再練習框架,找到了一點心得分享出來,不對之處歡迎提出共勉
1 引數型別string 一個引數
方法:
User getUserByName(String username);
mapper寫法:
<select id="getUserByName" parameterType="String" resultMap="user">
select * from d_user where user_name =#{1234567890}(或者#{_parameter})
</select>
2 引數型別string 兩個引數
方法:
User getUserByNameAndPwd(String username, String password);
mapper寫法:
<select id="getUserByNameAndPwd" parameterType="String" resultMap="user">
select * from d_user where user_name =#{param1} and user_password=#{param2}
</select>
或者方法:
User getUserByNameAndPwd(@param("username")String username, @param("password")String password);
mapper:
<select id="getUserByNameAndPwd" parameterType="String" resultMap="user">
select * from d_user where user_name =#{username} and user_password=#{password}
</select>
總結:
針對一個基本型別引數,mybatis可以準確的獲取這個引數的數值,不論你在mapper中用#{XXX}怎麼獲取都可以,
針對多個基本引數型別,mybatis需要給他提供一個標識,你可以在方法上新增@param註解 ,當然是,mybatis的包
org.apache.ibatis.annotations.Param ,
你也可以按照引數順序,寫param1,param2之類的,推薦第一種 ,比較嚴謹一點
其實我們可以把引數封裝進user物件中,傳入實體即可,不過為了測試mybatis對於基本型別引數,所以拆開來測試下。