一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - JAVA教程 - MyBatis獲取插入記錄的自增長字段值(ID)

MyBatis獲取插入記錄的自增長字段值(ID)

2021-02-18 12:52robot_man JAVA教程

本文分步驟給大家介紹了MyBatis獲取插入記錄的自增長字段值的方法,在文中給大家提到了mybatis返回插入數據的自增長id,需要的朋友可以參考下

第一步:

    在Mybatis Mapper文件中添加屬性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java對象的屬性名!

?
1
2
3
4
5
6
<insert id="insert" parameterType="Spares"
 useGeneratedKeys="true" keyProperty="id">
 insert into spares(spares_id,spares_name,
  spares_type_id,spares_spec)
 values(#{id},#{name},#{typeId},#{spec})
 </insert>

第二步:

    Mybatis執行完插入語句后,自動將自增長值賦值給對象Spares的屬性id。因此,可通過Spares對應的getter方法獲取!

?
1
2
3
4
5
6
7
8
9
10
11
12
/**
* 新增備件
* @author hellostory
* @param spares
* @return
*/
@RequestMapping(value = "/insert")
@ResponseBody
public JsonResponse insert(Spares spares) {
int count = sparesService.insert(spares);
System.out.println("共插入" + count + "條記錄!"
 + "\n剛剛插入記錄的主鍵自增長值為:" + spares.getId());

ps:mybatis返回插入數據的自增長id

今天測試反饋一個bug,現象是新注冊的用戶可以看到所有人的報告,老用戶沒問題,查看日志發現原來查詢的時候是新注冊的用戶的id為null,所以進行了全表有效數據查詢。 但是表的主鍵不允許為空,怎么會出現新的注冊用戶id為null呢?原因是在service層代碼直接將參數對象返回了,而xml沒有做任何配置。

具體的解決方案是在xml中的insert方法配置

?
1
useGeneratedKeys=”true” keyProperty=”registerId”

keyProperty值對應實體VO對象中的主鍵屬性

具體如下:

?
1
2
3
4
5
<code class="hljs java">@Override
  public Registers create(Registers r) {
    registersMapper.insert(r);
    return r;
  }</code>

registermapper.xml的insert方法如下:

?
1
<code class="hljs xml"><insert id="insert" keyproperty="registerId" parametertype="com.ciji.zzaservice.pojo.base.Registers" usegeneratedkeys="true">

執行正常的insert語句

?
1
</insert></code>

這樣在controller層就可以得到新插入數據的自增長主鍵了。

關于在xml中添加兩個屬性的意思,網上解釋如下:

useGeneratedKeys

(僅對insert有用)這會告訴MyBatis使用JDBC的getGeneratedKeys方法來取出由數據(比如:像MySQL和SQL Server這樣的數據庫管理系統的自動遞增字段)內部生成的主鍵。默認值:false。

keyProperty

(僅對insert有用)標記一個屬性,MyBatis會通過getGeneratedKeys或者通過insert語句的selectKey子元素設置它的值。默認:不設置。

總結

以上所述是小編給大家介紹的MyBatis獲取插入記錄的自增長字段值(ID),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:https://my.oschina.net/u/3708595/blog/1577120

延伸 · 閱讀

精彩推薦
  • JAVA教程詳解JAVA 原型模式

    詳解JAVA 原型模式

    這篇文章主要介紹了JAVA 原型模式的的相關資料,文中講解非常細致,實例幫助大家更好的理解和學習,感興趣的朋友可以了解下 ...

    菜鳥教程5112020-06-29
  • JAVA教程類似Object監視器方法的Condition接口(詳解)

    類似Object監視器方法的Condition接口(詳解)

    下面小編就為大家帶來一篇類似Object監視器方法的Condition接口(詳解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看...

    Java教程網4812020-11-02
  • JAVA教程淺談Java 三種方式實現接口校驗

    淺談Java 三種方式實現接口校驗

    這篇文章主要介紹了淺談Java 三種方式實現接口校驗,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    BarryW11352021-01-21
  • JAVA教程基于Protobuf動態解析在Java中的應用 包含例子程序

    基于Protobuf動態解析在Java中的應用 包含例子程序

    下面小編就為大家帶來一篇基于Protobuf動態解析在Java中的應用 包含例子程序。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過...

    Java教程網3472020-12-05
  • JAVA教程Java泛型詳解

    Java泛型詳解

    本文給大家匯總介紹了下java中的泛型的相關資料,包括引入泛型機制的原因,泛型類,泛型方法,泛型的實現以及泛型的注意事項,非常的詳細,有需要的...

    hebedich3142020-04-11
  • JAVA教程Java RandomAccessFile的用法詳解

    Java RandomAccessFile的用法詳解

    下面小編就為大家帶來一篇Java RandomAccessFile的用法詳解。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧 ...

    jingxian2932020-05-12
  • JAVA教程java中抽象類、抽象方法、接口與實現接口實例詳解

    java中抽象類、抽象方法、接口與實現接口實例詳解

    這篇文章主要給大家介紹了關于java中抽象類、抽象方法、接口與實現接口的相關資料,文中通過示例代碼將四者介紹的非常詳細,并且簡單介紹了抽象類和...

    YJLAugus3852021-01-30
  • JAVA教程BootStrap Jstree 樹形菜單的增刪改查的實現源碼

    BootStrap Jstree 樹形菜單的增刪改查的實現源碼

    這篇文章主要介紹了BootStrap Jstree 樹形菜單的增刪改查的實現源碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下 ...

    _PPB1702020-08-14
主站蜘蛛池模板: 丝瓜草莓香蕉绿巨人幸福宝 | 天天成人 | 免费人成在线观看视频播放 | 欧美贵妇vs高跟办公室 | 91精品婷婷国产综合久久8 | 女人用粗大自熨喷水在线视频 | 国产大片51精品免费观看 | 日韩免费一区 | 2020年国产精品午夜福利在线观看 | 亚洲精品在线免费看 | 99视频在线观看免费视频 | 日韩视频第二页 | 精品人伦一区二区三区潘金莲 | 特黄特黄一级高清免费大片 | 亚洲国产香蕉视频欧美 | 日本老妇乱子伦中文视频 | 久久亚洲精选 | 亚洲精品国产在线 | 热剧库| 成年人在线观看视频免费 | 欧洲vodafonewi喷潮 | 2019国内精品久久久久久 | 俺去啦最新 | 1769在线观看| 教室眠催白丝美女校花 | 国产精品嫩草影院一二三区入口 | 欧美一级高清免费a | 国产自产自拍 | 日韩成人小视频 | 全黄h全肉细节文在线观看 全彩成人18h漫画 | 国产亚洲一欧美一区二区三区 | 亚洲精品第一国产综合高清 | 超91精品手机国产在线 | 91精品国产亚洲爽啪在线影院 | 羞羞漫画免费漫画页面在线看漫画秋蝉 | 91李宗精品72集在线观看 | 国产一区二区三区在线观看视频 | 19+韩国女主播激情vip视频在线 | 日本大尺度激情做爰叫床 | 美女在尿口隐私视频 | 湖南美女被黑人4p到惨叫 |