久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - 請(qǐng)問mybatis新增操作使用UUID 如何返回UUID

瀏覽:154日期:2024-02-13 18:19:59

問題描述

問題解答

回答1:

調(diào)用持久層前,自己生成一個(gè)UUID,放到對(duì)象里并且方法返回該UUID。

回答2:

dao接口定義 save 方法 時(shí) 嘗試 修改返回類型 為String 看看有沒有接收到。默認(rèn)是返回影響行數(shù)的。如果配置了selectKey 可能會(huì)返回 selectKey的內(nèi)容 。

在使用MyBatis做持久層時(shí),insert語句默認(rèn)是不返回記錄的主鍵值,而是返回插入的記錄條數(shù);如果業(yè)務(wù)層需要得到記錄的主鍵時(shí),可以通過配置的方式來完成這個(gè)功能

針對(duì)Sequence主鍵而言,在執(zhí)行insert sql前必須指定一個(gè)主鍵值給要插入的記錄,如Oracle、DB2,可以采用如下配置方式:

<insert parameterType='vo.Category'><selectKey resultType='java.lang.Short' order='BEFORE' keyProperty='id'>SELECT SEQ_TEST.NEXTVAL FROM DUAL</selectKey>insert into category (name_zh, parent_id,show_order, delete_status, description)values (#{nameZh,jdbcType=VARCHAR},#{parentId,jdbcType=SMALLINT},#{showOrder,jdbcType=SMALLINT},#{deleteStatus,jdbcType=BIT},#{description,jdbcType=VARCHAR})</insert>回答3:

mybatis默認(rèn)返回的是影響的行數(shù),要返回id要另外寫。如果是oracle的數(shù)據(jù)庫(kù),uuid可以寫sys_guid()java - 請(qǐng)問mybatis新增操作使用UUID 如何返回UUID

如果是mysql的就要跟樓上說的一樣,先給一個(gè)id再保存

回答4:

不用在代碼中提前生成一個(gè)uuid,理解一下selectKey 中keyProperty屬性就可以解決這個(gè)問題。

java - 請(qǐng)問mybatis新增操作使用UUID 如何返回UUID

java - 請(qǐng)問mybatis新增操作使用UUID 如何返回UUID這樣在selectKey生成時(shí),產(chǎn)生的UUID會(huì)set進(jìn)當(dāng)前對(duì)象中

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 永靖县| 囊谦县| 资兴市| 寿阳县| 蛟河市| 新晃| 海城市| 扎兰屯市| 博罗县| 鹤峰县| 竹溪县| 荥阳市| 江城| 新津县| 连云港市| 拜城县| 赫章县| 庐江县| 巴马| 揭东县| 方山县| 汕尾市| 岐山县| 福安市| 开江县| 龙口市| 惠东县| 江油市| 榆林市| 包头市| 宁晋县| 磐安县| 万年县| 五大连池市| 抚顺县| 合水县| 两当县| 莒南县| 萍乡市| 磐石市| 永仁县|