在Java中没有@Id注释的序列生成器,在Postgres中处于休眠范围内

问题描述 投票:0回答:1

我有一个有人的REST API,现在我有一定范围的数字(40000-99999),我必须在其末尾填充并将其保存到数据库中,但是我不会在requestBody中获取它。我仍然必须按顺序坚持该数字,例如:Postgres中的40001、40002、40003等,因为它不是@Id字段,所以我无法找到将其坚持在DB中的方法,有什么方法可以用Java做到这一点? ,JPA。任何帮助将不胜感激。

java hibernate spring-boot jpa-2.0 nhibernate-mapping
1个回答
0
投票

在数据库中创建序列

CREATE SEQUENCE var_table_seq
INCREMENT 1
START 1; 

并且在您的Entity中,您必须输入此

@SequenceGenerator(name="my_seq",sequenceName="var_table_seq", allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="my_seq")
private Long var;
© www.soinside.com 2019 - 2024. All rights reserved.