mybatis獲取自增id的值
本文講述的方法主要適用於如下情景。在使用mybatis作為orm的專案中,如果多個關聯資料在同一個事物中時,第一個表插入資料時其主鍵為自增的id,第二個表插入資料時需要關聯插入的第一個表資料的id作為外來鍵,並且第一表中的資料除了主鍵id外都其餘專案都不具有唯一性。此時可以使用本文提供的方法在第一表插入資料後將其分配的自增id賦值給插入的物件。
1、mybatis中mapping檔案的配置
配置對於表的mapping的xml檔案,在插入資料的sql語句後加上如下配置:
useGeneratedKeys="true" keyProperty="id"
如:
<insert id="insert" parameterType="api.landsem.mybatis.entity.DeviceHotInfoEntity" useGeneratedKeys="true" keyProperty="id">
insert into tb_device_hotinfo (id, create_time, update_time,
v, mileage, tb_devices_imei
)
values (#{id,jdbcType=BIGINT}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
#{v,jdbcType=INTEGER}, #{mileage,jdbcType=REAL}, #{tbDevicesImei,jdbcType=VARCHAR}
)
</insert>
在加上上述配置後,在插入資料後,mybatis會將自動分配給該記錄的id值賦值到物件的id屬性中(不管事物是否提交)。第二個表中直接使用第一個物件的id屬性即可。
相關文章
- Mybatis獲取自增主鍵的值MyBatis
- mybatis獲取自增主鍵MyBatis
- MyBatis 獲取自增主鍵MyBatis
- 深入分析Mybatis 使用useGeneratedKeys獲取自增主鍵MyBatis
- mysql資料表插入資料後,獲取自增欄位值的方法MySql
- mysql獲取指定表當前自增id值MySql
- Mybatis通用mapper獲得insert後的資料實體的自增IDMyBatisAPP
- antd Form元件方法getFieldsValue獲取自定義元件的值ORM元件
- mysql預先取自動增長主鍵的下一個值MySql
- 騰訊 Tars-Go 服務獲取自定義模版(配置)值Go
- Mybatis Plus 3.X版本的insert填充自增id的IdType.ID_WORKER策略原始碼分析MyBatis原始碼
- Java書籤 #MyBatis之批量插入並返回自增主鍵idJavaMyBatis
- Seata-AT模式:MySQL自增ID的場景下推薦在 Mybatis 中使用 useGeneratedKeys模式MySqlMyBatis
- 自增ID的實現
- 獲取gridview所有行的idView
- 如何獲取自動化測試實戰經驗
- mybatis的增刪改查MyBatis
- uni-app定位獲取自身和附近定位資訊APP
- mybatis中的增刪改操作MyBatis
- Vue專案打包後動態獲取自定義變數Vue變數
- mongoose使用validate驗證, 獲取自定義驗證資訊Go
- java 獲取當前程式的程式IDJava
- MyBatis-Pro,新一代的MyBatis增強框架MyBatis框架
- MyBatis從插入語句中檢索自動生成的IDMyBatis
- 捕獲cookie的值Cookie
- Mybatis中List傳值MyBatis
- 根據id獲取元素的寬度的方法
- Golang 獲取 goroutine id 完全指南Golang
- 在 JDBC 中獲取插入 IDJDBC
- 淘寶/天貓獲取淘寶直播分類id介面 API 返回值說明API
- 分散式ID系列(3)——資料庫自增ID機制適合做分散式ID嗎分散式資料庫
- HTML id屬性值不能重複HTML
- JavaScript獲取css的值JavaScriptCSS
- Laravel 從中介軟體中獲取自定義使用者資訊Laravel
- 更便捷的Mybatis增強外掛——EasyMybatisMyBatis
- Mybatis-Plus增強包MyBatis
- function ALV 獲取OO ALV event IDFunction
- 計算機視覺領域如何從別人的論文裡獲取自己的idea?計算機視覺Idea
- springboot整合mybatis增刪改查(三):mybatis逆向工程Spring BootMyBatis