當前位置:
首頁 > 知識 > 框架學習系列 mybatis 第七篇 插入資料庫後返回主鍵

框架學習系列 mybatis 第七篇 插入資料庫後返回主鍵

本節主要內容

1:自增主鍵返回(主講)

2:uuid類型主鍵返回

3:主鍵返回值序列(oracle的)

4:延伸-自增長主鍵怎麼返回當前id的下一個?

5:總結&下節預告

本文是《凱哥陪你學系列-框架學習之mybatis框架學習》中第7篇 mybatis入門程序之插入資料庫後返回主鍵

一:自增主鍵返回(主講)

1.1:未插入前先查詢資料庫,當前最大的主鍵id是多少:

可以看到是28

1.2:先看mapper.xml文件修改

1.3:測試代碼:

1.4:查看sql日誌:

我們可以看到最新插入數據的id是29.說明已經返回最新插入數據的id

1.5:詳細分析

說明:

selectKey:查詢主鍵,在標籤內需要輸入查詢主鍵的sql

keyProperty:主鍵對應的列表(對象屬性名)。在本案例中就是id

resultType:返回主鍵的類型。本案例是自增長型的int類型

order:指定擦還行主鍵的sql和insert語句的執行順序,相對於insert語句來說的。

我們是獲取插入後的主鍵id,所以order的值就是after

LAST_INSERT_ID:該函數是mysql的函數,獲取自增主鍵的id.該函數必須配合

inster語句一起使用。否則無效

mapper.xml具體代碼:

二:uuid類型主鍵返回

直接上圖

說明:

resultType:uuid是String類型的。所以這裡是uuid的

order:除了自增類型的以外,其他的都是before的

UUID():mysql函數的

注意:

使用uuid作為主鍵的時候,id必須要顯示插入

三:主鍵返回值序列(oracle的)

說明:

如果是Oracle資料庫的時候,UUID作為主鍵就不能使用UUID()這個函數了。需要使用

seq.nextval from dual 這個語句。

四:延伸-自增長主鍵怎麼返回當前id的下一個?

先看執行結果:

在看mapper.xml文件:

不做過多解釋。

五:總結&下節預告

通過本節學習我們需要掌握的:

1:不同類型的主鍵,怎麼返回?

2:自增類型主鍵id的兩種返回方式

入門程序小結

l #{}和${}

#{}表示佔位符?,#{}接收簡單類型的參數時,裡面的名稱可以任意

${}表示拼接符,${}接收簡單類型的參數時,裡面的名稱必須是value

${}裡面的值會原樣輸出,不加解析(如果該參數值是字元串,有不會添加引號)

${}存在sql注入的風險,但是有些場景下必須使用,比如排序後面會動態傳入排序的列名

l parameterType和resultType

parameterType指定輸入參數的java類型,parameterType只有一個,也就是說入參只有一個。

resultType指定輸出結果的java類型(是單條記錄的java類型)

l selectOne和selectList

selectOne查詢單個對象

selectList查詢集合對象

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 凱哥java 的精彩文章:

框架學習系列 mybatis 第六篇 入門程序之插入數據1
框架學習系列 mybatis 第四篇 入門程序之需求開發1
框架學習系列 mybatis第五篇入門程序根據用戶名模糊查詢
框架學習系列 mybatis第二篇 mybatis的工作原理
框架學習系列 mybatis 第三篇入門程序之工程項目的搭建

TAG:凱哥java |

您可能感興趣

mybatis和Mysql返回插入的主鍵ID
MyBatis 註解形式返回Map
Iron Man 確定將於《Avengers: Endgame》太空中成功存活與返回地球?
Andriod Q取消返回鍵 有點iPhone的味道
Andriod Q取消返回鍵 有點iPhone的味道
Android Q 新系統將取消返回鍵?
任天堂的Virtual Boy以非官方的Cardboard形式返回
谷歌在Android Q Beta中嘗試新側滑返回手勢
Windows漏洞利用開發教程Part 5:返回導向編程
Switch Lite 發布,一加 7 Pro 加入側滑返回手勢
SpaceX載人龍飛船Crew Dragon成功完成首飛返回地球
SpaceX載人龍飛船Crew Dragon成功完成首飛返回地球!
XDA 開發者:Android Q 或取消返回鍵
iQOO迎來Funtouch OS系統升級,新增了「側邊返回」手勢!
三星的攻擊性,除摺疊屏Galaxy Fold還要返回中國戰場
後台date轉換json字元串時,返回前台頁面是long類型時間問題解決
Spring MVC請求及返回JSON數據
從微博motan看rpc基於netty4遠程通訊設計4-同步非同步返回結果處理
Gigi Hadid 在紐約出街返回公寓
「入伍Day-1」G-Dragon返回首爾:獲大批粉絲機場不舍圍堵