91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在Springboot項目中使用MybatisPlus和Oracle實現主鍵ID的自增

發布時間:2020-11-18 15:49:35 來源:億速云 閱讀:1767 作者:Leah 欄目:開發技術

在Springboot項目中使用MybatisPlus和Oracle實現主鍵ID的自增?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

application.yml配置

# Mybatis的相關配置
mybatis-plus:
 mapper-locations: classpath*:com/XX/XX/XX/dao/mapping/*.xml
 typeAliasesPackage: com.XX.XX.XX.model
 global-config:
  #主鍵類型 0:"數據庫ID自增", 1:"用戶輸入ID",2:"全局唯一ID (數字類型唯一ID)", 3:"全局唯一ID UUID";
  id-type: 1
  #序列接口實現類配置
  key-generator: com.baomidou.mybatisplus.incrementer.OracleKeyGenerator

model實體類配置(僅展示id)

import java.io.Serializable;
import javax.persistence.*;
import lombok.Data;
 
 
@Data
@Table(name = "POJO")
public class SysLogeInfo implements Serializable {
  @Id
  @Column(name = "ID")
  @SequenceGenerator(name = "sequenceGenerator",sequenceName = "POJO_SEQ")
  @GeneratedValue(generator = "sequenceGenerator",strategy = GenerationType.SEQUENCE)
  private Integer id;
}

其中:

@SequenceGenerator的name與@GeneratedValue的generator相對應

sequenceName即你在oracle數據庫中為此表創建的自增序列名(貌似框架無法自動生成,需要自己手動創建)

這樣,主鍵ID插入null值的問題基本解決了,但是我們的Mapper繼承了tk.mybatis.mapper.common.Mapper,插入是直接調tk.Mapper的insertSelective(T var1)方法,有時候我們需要插入后的主鍵id,這種方法沒辦法得到,所以只能手寫insert方法,如下。

<insert id="add" keyColumn="ID" keyProperty="id" parameterType="com.XX.XX.XX.model.POJO" useGeneratedKeys="true">
    <selectKey resultType="int" order="BEFORE" keyProperty="id">
      SELECT POJO_SEQ.nextval id FROM DUAL
    </selectKey>
    INSERT INTO POJO
    ( ID,COL1,COL2,COL3,COL4,COL5,COL6)
    VALUES
    (#{id,jdbcType=INTEGER},
    #{col1,jdbcType=INTEGER},
    #{col2,jdbcType=VARCHAR},
    #{col3,jdbcType=INTEGER},
    #{col4,jdbcType=INTEGER},
    #{col5,jdbcType=DATE},
    #{col6,jdbcType=INTEGER})
</insert>

注:<selectKey>標簽中加入order='BEFORE'即可在插入完成后返回主鍵。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

扶沟县| 新邵县| 五台县| 喀什市| 瓦房店市| 天镇县| 赫章县| 株洲县| 建德市| 棋牌| 苍溪县| 密山市| 定襄县| 雷州市| 汾阳市| 武陟县| 海原县| 松溪县| 西峡县| 镇康县| 井研县| 安阳市| 龙里县| 罗甸县| 汶川县| 徐闻县| 湘潭市| 龙游县| 涞水县| 陵水| 天水市| 葵青区| 且末县| 炎陵县| 株洲市| 长春市| 温泉县| 肇庆市| 福州市| 阿克陶县| 驻马店市|