【发布时间】:2017-06-01 12:19:03
【问题描述】:
我有一种情况,我尝试使用取决于最大 id 值的 id 来持久化实体,例如,新实体 id 将为 MAX(id)+1。 现在我尝试使用 JPA 来持久化这个实体
@Entity
@Table(name = "product")
public class ProductDetails {
@Id
@GeneratedValue
private String id;
我使用了strategy = GenerationType.AUTO、strategy = GenerationType.IDENTITY、strategy = GenerationType.SEQUENCE、strategy = GenerationType.TABLE 它们都不起作用,所以我认为我可以通过选择最大 id 然后 +1 并使用该值来解决它(我没有尝试过) 我要问的是,有没有办法通过 JPA 或 Hibernate 来处理这种情况。注意:id 列不是自动递增的,数据库没有序列。
【问题讨论】:
-
它不起作用,因为它是一个字符串。如果您使用 Long,
GenerationType.AUTO应该可以正常工作。 stackoverflow.com/questions/10100970/… -
@XtremeBaumer 不起作用
标签: java spring hibernate spring-mvc jpa