【发布时间】:2018-06-19 15:10:46
【问题描述】:
下面的代码只渲染一个ID为0
@Id
@GeneratedValue(strategy=GenerationType.AUTO, generator="PROJECT_SEQ_GEN")
@SequenceGenerator(name="PROJECT_SEQ_GEN", sequenceName="X.X_PROJECT_SEQ", allocationSize=1)
private long projectId;
我尝试了SEQUENCE 和AUTO,但结果相同。 x_project_seq.nextval 在我的 Oracle 数据库中运行良好。我想继续使用数据库中已经定义的序列。
根据 Spring 的入门指南 - Accessing Data with JPA ...
“客户的 `id 属性使用 @Id 进行注释,以便 JPA 将其识别为对象的 ID。id 属性也使用 @GeneratedValue 进行注释以指示应自动生成 ID。”
从他们的示例看来,他们所做的只是创建 new Customer 并且 ID 是自动生成的。我在这里想念什么?
【问题讨论】:
-
您的
strategy = GenerationType.AUTO应该是strategy = GenerationType.SEQUENCE
标签: spring-boot jpa oracle11g spring-data-jpa