mybatis傳遞參數
mybatis傳遞參數
一個參數時
-
#佔位符
使用方法#{username}
,username可以為任意字符,只與傳遞過來的參數有關 -
$拼接
使用方法為'${uername}'
需要加單引號,而且username可以是任意名稱
兩個參數時
-
mybatis會將參數放在map集合中進行存儲
-
以arg或者param為鍵,以參數為值
-
arg1,arg2,param1,param2,arg和param可以混合使用
-
只需要通過
#{}
,${}
的方式訪問值即可
有多個參數時
- 可以自己設置map
- 使用方法同兩個參數時
參數為實體類時
- 通過屬性名訪問屬性值,屬性名不一定是成員變量
- 屬性名是get和set方法名中的get和set去調用,把剩餘部分的首字母變為小寫的結果,就是我們當前的屬性名
使用@Param註解命名參數
-
在mapper接口函數時使用,加在參數前面
-
例如:
User checkLoginByParam(@Param("username") String username, @Param("password") String password)
-
mybatis會自動生成map
-
以@Param註解的值為鍵,以參數為值
-
註解之後arg參數就變為註解的值
使用最多的為實體類和@Param類型