如何用JPA创建PostgreSql序列?

时间:2012-03-02 12:02:13

标签: postgresql jpa ejb-3.0 sequence ejb-3.1

我的目标是EJB应该生成一个序列,因为它从实体生成表。我怎样才能做到这一点?

我想到了这一点,但在那种情况下我只使用现有的序列。我想要一个由JPA生成的序列。我认为这是不可能的,或者是吗?

@Entity
@Table(name = "CUSTOMER")
@SequenceGenerator(name = "sb_sequence",sequenceName = "sb_sequence", initialValue=5420)
public class Customer extends EntityBase
{
    private static final long serialVersionUID = 3456353535358L;

    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="sb_sequence")
    @Column(name = "CUS_SEQUENCE")
    private long cusSequence;
.
.
.
}

背景:在我将第一个值插入数据库之前,我需要检索第一个序列号(可能是选择nextval('sequence');)

1 个答案:

答案 0 :(得分:0)

大多数JPA提供程序允许生成DDL,但这不是JPA规范的一部分。

对于EclipseLink,请参阅

http://wiki.eclipse.org/EclipseLink/Examples/JPA/DDL