欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MyBatis如何使用selectKey返回主鍵的值

 更新時(shí)間:2022年01月23日 09:58:45   作者:pbyang5689  
這篇文章主要介紹了MyBatis如何使用selectKey返回主鍵的值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

使用selectKey返回主鍵的值

使用<selectKey>標(biāo)簽來獲取插入操作主鍵返回的值。

對(duì)于MySQL數(shù)據(jù)庫(kù)

? <insert id="insert">
? ? ? ?insert into user(
? ? ? ?username, password, email, info, headImg, createTime)
? ? ? ?values(
? ? ? ?#{username}, #{password}, #{email},
? ? ? ?#{info}, #{headImg, jdbcType=BLOB},
? ? ? ?#{createTime, jdbcType=TIMESTAMP})
? ? ? ?<selectKey keyColumn="id" resultType="long" keyProperty="id" order="AFTER">
? ? ? ? ? SELECT LAST_INSERT_ID()
? ? ? ?</selectKey> ? ??
? ?</insert>

通過selectkey返回insert或update后的值

實(shí)體類如下:

表結(jié)構(gòu)如下:

其中varId為主鍵,但非自增

@selectKey使用

@selectKey

  • statement:指定查詢的語(yǔ)句
  • keyProperty:指定結(jié)果對(duì)應(yīng)的實(shí)體類的字段,如果是多個(gè)字段,采用逗號(hào),分隔。如varId,varName,
  • keyColumn:指定stament語(yǔ)句返回的列明,與keyProperty對(duì)應(yīng),如果多個(gè),采用逗號(hào)分隔。
  • resultType:返回值類型
  • before:ture,插入前執(zhí)行,false插入后執(zhí)行

插入時(shí),如何查詢當(dāng)前最大id,并賦值給實(shí)體類,示例如下:

方案1

插入前,首先查詢當(dāng)前最大的id,并賦值給實(shí)體對(duì)象

如下:

方案2

插入時(shí),獲取當(dāng)前最大值,插入

插入后,查詢當(dāng)前最大的id,并賦值給實(shí)體對(duì)象。

如下:

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Springboot 注入裝配到IOC容器方式

    詳解Springboot 注入裝配到IOC容器方式

    今天通過實(shí)例代碼給大家介紹了Springboot 注入裝配到IOC容器方式,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,感興趣的朋友跟隨小編一起看看吧
    2021-10-10
  • Spring Boot 2.X優(yōu)雅的解決跨域問題

    Spring Boot 2.X優(yōu)雅的解決跨域問題

    這篇文章主要給大家介紹了關(guān)于Spring Boot 2.X如何優(yōu)雅的解決跨域問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring Boot 2.X具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 23種設(shè)計(jì)模式(15)java解釋器模式

    23種設(shè)計(jì)模式(15)java解釋器模式

    這篇文章主要為大家詳細(xì)介紹了23種設(shè)計(jì)模式之java解釋器模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Java向Runnable線程傳遞參數(shù)方法實(shí)例解析

    Java向Runnable線程傳遞參數(shù)方法實(shí)例解析

    這篇文章主要介紹了Java向Runnable線程傳遞參數(shù)方法實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • IntellJ IDEA神器使用技巧(小結(jié))

    IntellJ IDEA神器使用技巧(小結(jié))

    這篇文章主要介紹了IntellJ IDEA神器使用技巧(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 利用IDEA工具修改Maven多模塊項(xiàng)目標(biāo)識(shí)包名全過程記錄

    利用IDEA工具修改Maven多模塊項(xiàng)目標(biāo)識(shí)包名全過程記錄

    當(dāng)我們?yōu)榧追椒?wù)提供軟件開發(fā)服務(wù)時(shí),需要按照甲方的要求去修改軟件的標(biāo)識(shí),對(duì)于Maven項(xiàng)目來說就對(duì)應(yīng)著groupId,一般地寫對(duì)方公司的域名,如com.example,接下來通過本文給大家分享IDEA修改Maven多模塊項(xiàng)目標(biāo)識(shí)包名,感興趣的朋友一起看看吧
    2022-09-09
  • Java模擬并解決緩存穿透問題

    Java模擬并解決緩存穿透問題

    這篇文章主要介紹了Java模擬并解決緩存穿透問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-08-08
  • Mybatis實(shí)現(xiàn)動(dòng)態(tài)排序方式

    Mybatis實(shí)現(xiàn)動(dòng)態(tài)排序方式

    這篇文章主要介紹了Mybatis實(shí)現(xiàn)動(dòng)態(tài)排序方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • java實(shí)現(xiàn)水波紋擴(kuò)散效果

    java實(shí)現(xiàn)水波紋擴(kuò)散效果

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)水波紋擴(kuò)散效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • springboot啟動(dòng)時(shí)運(yùn)行代碼詳解

    springboot啟動(dòng)時(shí)運(yùn)行代碼詳解

    在本篇內(nèi)容中我們給大家整理了關(guān)于在springboot啟動(dòng)時(shí)運(yùn)行代碼的詳細(xì)圖文步驟以及需要注意的地方講解,有興趣的朋友們學(xué)習(xí)下。
    2019-06-06

最新評(píng)論