第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Spring Data Jpa 不會自動獲取 Next Id (PK),它總是從 1 開始

Spring Data Jpa 不會自動獲取 Next Id (PK),它總是從 1 開始

慕娘9325324 2023-06-04 15:21:25
我正在開發(fā)Spring Boot (2.1.7.RELEASE) +Data Jpa + Postgres示例。在此示例中,我明確傳遞了EMP_IDvalue= 100,接下來我允許 data-jpa 自動獲取下一個 Id,即101. 我不確定為什么它不能那樣工作??Employee.java@Data@AllArgsConstructor@NoArgsConstructor@EqualsAndHashCode(callSuper = true)@Entitypublic class Employee extends BaseEntity{? ? @Id? ? @GeneratedValue(strategy = IDENTITY)? ? @Column(name = "EMP_ID", unique = true, nullable = false)? ? private Integer empId;? ? @Column(name = "EMP_NAME", unique = true, nullable = false)? ? private String empName;? ? @Column(name = "EMP_EMAIL", unique = true, nullable = false)? ? private String empEmail;? ? @Builder(builderMethodName="eBuilder")? ? public Employee(Integer empId, String empName, String empEmail,? ? ? ? ? ? Instant createdDate, Instant lastUpdateDate,String createUser, String lastUpdateUser) {? ? ? ? super(createdDate, lastUpdateDate, createUser, lastUpdateUser);? ? ? ? this.empId = empId;? ? ? ? this.empName = empName;? ? ? ? this.empEmail = empEmail;? ? }}BaseEntity.java@Data@MappedSuperclass@NoArgsConstructor@AllArgsConstructor@EntityListeners(AuditingEntityListener.class)public class BaseEntity {? ? @CreatedDate? ? @Column(name = "createdDate", nullable = false, updatable = false)? ? private Instant createdDate;? ? @Column(name = "lastUpdateDate", nullable = false)? ? @LastModifiedDate? ? private Instant lastUpdateDate;? ? @Column(name = "createUser", nullable = false, length = 50)? ? private String createUser;? ? @Column(name = "lastUpdateUser", length = 50)? ? private String lastUpdateUser;}即使我在下面使用,仍然效果不佳@Id? ? @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "emp_generator")? ? @SequenceGenerator(name="emp_generator", sequenceName = "emp_seq", allocationSize=1)? ? @Column(name = "EMP_ID", unique = true, nullable = false)? ? private Integer empId;
查看完整描述

3 回答

?
UYOU

TA貢獻(xiàn)1878條經(jīng)驗 獲得超4個贊

這將起作用:

@GeneratedValue(strategy=GenerationType.SEQUENCE)


查看完整回答
反對 回復(fù) 2023-06-04
?
守著一只汪

TA貢獻(xiàn)1872條經(jīng)驗 獲得超4個贊

我明確傳遞了 EMP_ID 值 = 100,接下來我允許 data-jpa 自動獲取下一個 ID,即 101。我不確定為什么它不能以這種方式工作?

JB Nizet :

序列生成器包括從數(shù)據(jù)庫序列中獲取下一個 ID。不是從您自己最后插入的 ID 獲取下一個 ID。

我一直想通過始終執(zhí)行 max id +1 來保存記錄。有沒有辦法用 Spring Data JPA 做到這一點

JB Nizet 再次指出這是一個糟糕的想法。這將需要鎖定每個插入的索引或至少鎖定索引,包括選擇以確定下一個 id。

查看完整回答
反對 回復(fù) 2023-06-04
?
慕桂英546537

TA貢獻(xiàn)1848條經(jīng)驗 獲得超10個贊

EMP_ID確保數(shù)據(jù)庫上的類型:SERIALInteger。要與 postgres 一起使用,IDENTITY它必須是SERIAL。


查看完整回答
反對 回復(fù) 2023-06-04
  • 3 回答
  • 0 關(guān)注
  • 262 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號