中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mybatis怎么傳入多個參數

發布時間:2021-03-05 15:18:07 來源:億速云 閱讀:597 作者:小新 欄目:編程語言

小編給大家分享一下Mybatis怎么傳入多個參數,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

第一種方式:使用@Param注解方式

此種方式用法是我們在接口中寫方法的參數時,在每個參數的前面加上一個@Param注解即可。

該注解有一個value屬性,我們可以給加上注解的參數取個名字,在SQL語句中我們可以通過這個名字獲取參數值。

由于傳入了多個參數,所以映射文件的入參ParameterType不用寫。

假如我們在接口的方法如下:

//根據傳入的用戶名和主鍵id去修改用戶名int updateUserByManyParam(@Param("name")String username,@Param("id")Integer id);

我們先在映射文件里面瞎寫看看控制臺會報什么錯誤:

//錯誤實例:<update id="updateUserByManyParam"> update user set username = #{name1} where id = #{oid}</update>

好了,看看控制臺報了什么錯:

//錯誤信息Cause: org.apache.ibatis.binding.BindingException: Parameter 'name1' not found.Available parameters are [name, id, param1, param2]

從錯誤信息我們可以看到,它說找不到name1參數,存在的參數有name, id, param1, param2,那么我們按照控制臺說的來就可以了。

①按照指定的參數名

<update id="updateUserByManyParam"> update user set username = #{name} where id = #{id}</update>

②按照參數的順序

<update id="updateUserByManyParam">  update user set username = #{param1} where id = #{param2}</update>

第二種方式:按照參數的編寫順序

此種方式我們在傳入參數的時候什么都不用做就行了,只要在SQL語句中按照規則獲取參數值即可。

假如我們在接口的方法如下:

//根據傳入的用戶名和主鍵id去修改用戶名int updateUserByManyParam(@Param("name")String username,@Param("id")Integer id);

我們和上面一樣,先在映射文件里面瞎寫看看控制臺會報什么錯誤:

//錯誤實例:<update id="updateUserByManyParam"> update user set username = #{ddd} where id = #{fff}</update>

好了,看看控制臺報了什么錯:

//錯誤信息:Cause: org.apache.ibatis.binding.BindingException: Parameter 'ddd' not found. Available parameters are [arg1, arg0, param1, param2]

從錯誤信息我們可以看到,它說找不到ddd參數,存在的參數有arg1, arg0, param1, param2,那么我們按照控制臺說的來就可以了。

①按照參數的順序

<update id="updateUserByManyParam">  update user set username = #{arg0} where id = #{arg1}</update>

②按照參數的順序

<update id="updateUserByManyParam">  update user set username = #{param1} where id = #{param2}</update>

總結

使用@Param注解方式,在SQL語句中我們可以按照自定義的名稱獲取參數值,也可以用param1、param2、…順序來獲取參數值。  直接傳入參數,在SQL語句中按照參數傳遞的順序,利用arg1、arg2、…順序獲得對應的參數值。  直接傳入參數,在SQL語句中按照參數傳遞的順序,利用param1、param2、…順序來獲取參數值。

注意:param后面的數字是從1開始的,而arg后面的數字是從0開始的。

以上是“Mybatis怎么傳入多個參數”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

犍为县| 定安县| 汽车| 凤山市| 岳阳县| 互助| 沙河市| 花垣县| 金塔县| 车致| 武定县| 綦江县| 广东省| 赣州市| 缙云县| 富裕县| 拜城县| 深圳市| 鄂伦春自治旗| 平顶山市| 卢湾区| 美姑县| 闽侯县| 华阴市| 东乌珠穆沁旗| 清徐县| 平湖市| 庆城县| 平定县| 天台县| 安岳县| 吴堡县| 天祝| 余江县| 兴安县| 崇义县| 沿河| 盐池县| 绵阳市| 隆昌县| 南丰县|