亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Mybatis如何傳入多個(gè)參數(shù)的實(shí)現(xiàn)代碼

 更新時(shí)間:2019年12月17日 11:45:24   作者:培珺  
這篇文章主要介紹了Mybatis如何傳入多個(gè)參數(shù)的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

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

此種方式用法是我們?cè)诮涌谥袑懛椒ǖ膮?shù)時(shí),在每個(gè)參數(shù)的前面加上一個(gè)@Param注解即可。

該注解有一個(gè)value屬性,我們可以給加上注解的參數(shù)取個(gè)名字,在SQL語(yǔ)句中我們可以通過(guò)這個(gè)名字獲取參數(shù)值。

由于傳入了多個(gè)參數(shù),所以映射文件的入?yún)arameterType不用寫。

假如我們?cè)诮涌诘姆椒ㄈ缦拢?/p>

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

我們先在映射文件里面瞎寫看看控制臺(tái)會(huì)報(bào)什么錯(cuò)誤:

//錯(cuò)誤實(shí)例:
<update id="updateUserByManyParam">
 update user set username = #{name1} where id = #{oid}
</update>

好了,看看控制臺(tái)報(bào)了什么錯(cuò):

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

從錯(cuò)誤信息我們可以看到,它說(shuō)找不到name1參數(shù),存在的參數(shù)有name, id, param1, param2,那么我們按照控制臺(tái)說(shuō)的來(lái)就可以了。

①按照指定的參數(shù)名

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

②按照參數(shù)的順序

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

第二種方式:按照參數(shù)的編寫順序

此種方式我們?cè)趥魅雲(yún)?shù)的時(shí)候什么都不用做就行了,只要在SQL語(yǔ)句中按照規(guī)則獲取參數(shù)值即可。

假如我們?cè)诮涌诘姆椒ㄈ缦拢?/p>

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

我們和上面一樣,先在映射文件里面瞎寫看看控制臺(tái)會(huì)報(bào)什么錯(cuò)誤:

//錯(cuò)誤實(shí)例:
<update id="updateUserByManyParam">
 update user set username = #{ddd} where id = #{fff}
</update>

好了,看看控制臺(tái)報(bào)了什么錯(cuò):

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

從錯(cuò)誤信息我們可以看到,它說(shuō)找不到ddd參數(shù),存在的參數(shù)有arg1, arg0, param1, param2,那么我們按照控制臺(tái)說(shuō)的來(lái)就可以了。

①按照參數(shù)的順序

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

②按照參數(shù)的順序

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

總結(jié)

  • 使用@Param注解方式,在SQL語(yǔ)句中我們可以按照自定義的名稱獲取參數(shù)值,也可以用param1、param2、…順序來(lái)獲取參數(shù)值。
  • 直接傳入?yún)?shù),在SQL語(yǔ)句中按照參數(shù)傳遞的順序,利用arg1、arg2、…順序獲得對(duì)應(yīng)的參數(shù)值。
  • 直接傳入?yún)?shù),在SQL語(yǔ)句中按照參數(shù)傳遞的順序,利用param1、param2、…順序來(lái)獲取參數(shù)值。

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot與vue實(shí)現(xiàn)簡(jiǎn)單的CURD過(guò)程詳析

    springboot與vue實(shí)現(xiàn)簡(jiǎn)單的CURD過(guò)程詳析

    這篇文章主要介紹了springboot與vue實(shí)現(xiàn)簡(jiǎn)單的CURD過(guò)程詳析,圍繞springboot與vue的相關(guān)資料展開實(shí)現(xiàn)CURD過(guò)程的過(guò)程介紹,需要的小伙伴可以參考一下
    2022-01-01
  • 解決SpringMvc后臺(tái)接收json數(shù)據(jù)中文亂碼問(wèn)題的幾種方法

    解決SpringMvc后臺(tái)接收json數(shù)據(jù)中文亂碼問(wèn)題的幾種方法

    本篇文章主要介紹了解決SpringMvc后臺(tái)接收json數(shù)據(jù)中文亂碼問(wèn)題的幾種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Java中BigDecimal類的簡(jiǎn)單用法

    Java中BigDecimal類的簡(jiǎn)單用法

    這篇文章主要介紹了Java中BigDecimal類的簡(jiǎn)單用法,是Java應(yīng)用程序開發(fā)中非常實(shí)用的技巧,本文以實(shí)例形式對(duì)此進(jìn)行了簡(jiǎn)單的分析,需要的朋友可以參考下
    2014-09-09
  • Java?深入學(xué)習(xí)static關(guān)鍵字和靜態(tài)屬性及方法

    Java?深入學(xué)習(xí)static關(guān)鍵字和靜態(tài)屬性及方法

    這篇文章主要介紹了Java?深入學(xué)習(xí)static關(guān)鍵字和靜態(tài)屬性及方法,文章通過(guò)圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • java區(qū)分絕對(duì)路徑和相對(duì)路徑的方法

    java區(qū)分絕對(duì)路徑和相對(duì)路徑的方法

    這篇文章主要介紹了java區(qū)分絕對(duì)路徑和相對(duì)路徑的方法,實(shí)例分析了java針對(duì)路徑操作的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • SpringBoot實(shí)現(xiàn)熱部署Community的示例代碼

    SpringBoot實(shí)現(xiàn)熱部署Community的示例代碼

    本文主要介紹了SpringBoot實(shí)現(xiàn)熱部署Community的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 詳析Spring中依賴注入的三種方式

    詳析Spring中依賴注入的三種方式

    在開發(fā)的過(guò)程中突然對(duì)Spring的依賴注入幾種方式出現(xiàn)混交,打算做個(gè)簡(jiǎn)單的小結(jié),方便大家和自己以后參考借鑒,如有總結(jié)不對(duì)的地方,請(qǐng)大家不吝指教!下面來(lái)一起看看吧。
    2016-09-09
  • Java IO流之原理分類與節(jié)點(diǎn)流文件操作詳解

    Java IO流之原理分類與節(jié)點(diǎn)流文件操作詳解

    流(Stream)是指一連串的數(shù)據(jù)(字符或字節(jié)),是以先進(jìn)先出的方式發(fā)送信息的通道,數(shù)據(jù)源發(fā)送的數(shù)據(jù)經(jīng)過(guò)這個(gè)通道到達(dá)目的地,按流向區(qū)分為輸入流和輸出流
    2021-10-10
  • java中如何獲取線程名稱

    java中如何獲取線程名稱

    這篇文章主要介紹了java中如何獲取線程名稱問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • spring-boot-starter-web更換默認(rèn)Tomcat容器的方法

    spring-boot-starter-web更換默認(rèn)Tomcat容器的方法

    Spring Boot支持容器的自動(dòng)配置,默認(rèn)是Tomcat,當(dāng)然我們也是可以進(jìn)行修改的。下面小編給大家?guī)?lái)了spring-boot-starter-web更換默認(rèn)Tomcat容器的方法,感興趣的朋友跟隨小編一起看看吧
    2019-04-04

最新評(píng)論