useGeneratedKeys的详解
生活随笔
收集整理的這篇文章主要介紹了
useGeneratedKeys的详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在settings元素中設置useGeneratedKeys參數
官方的說法是該參數的作用是:“允許JDBC支持自動生成主鍵,需要驅動兼容”,如何理解這句話的意思?
其本意是說:對于支持自動生成記錄主鍵的數據庫,如:MySQL,SQL Server,此時設置useGeneratedKeys參數值為true,在執行添加記錄之后可以獲取到數據庫自動生成的主鍵ID。
實際上,在settings元素中設置useGeneratedKeys是一個全局參數,但是只會對接口映射器產生影響,對xml映射器不起效。
在項目中經常需要獲取到插入數據的主鍵來保障后續操作,數據庫中主鍵一般我們使用自增或者uuid()的方式自動生成
問題:對于uuid使用Java代碼生成的方式還比較容易控制,然而使用數據庫生成的主鍵,這樣我們就需要將插入的數據再查詢出來得到主鍵,某些情況下還可能查詢到多條情況,這樣就比較尷尬了。
那有什么辦法來插入數據的時候就得到這個主鍵呢?
useGeneratedKeys=“true”? ? ?keyProperty=“id”
useGeneratedKeys設置為 true 時,表示如果插入的表id以自增列為主鍵,則允許 JDBC 支持自動生成主鍵,并可將自動生成的主鍵id返回。
useGeneratedKeys參數只針對 insert 語句生效,默認為 false;
?
總結
以上是生活随笔為你收集整理的useGeneratedKeys的详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql的优化——索引介绍
- 下一篇: JVM的生命周期||JVM的发展历程