如果id为-48,则如果分配大小存在,则休眠映射为1。怎么样?

时间:2018-12-05 12:07:46

标签: java database hibernate jpa

我有一个映射的实体,我想详细地指出它的序列。所以我有以下映射:

@Entity
@Table(schema = DbConstants.SCHEMA_PUBLIC, name = 
DbConstants.PUBLIC_TABLE_TEST)
public class TestEntity implements Serializable {
    private static final long serialVersionUID = 6284010266557287786L;

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "test")
    @SequenceGenerator(schema = DbConstants.SCHEMA_PUBLIC, name = "test", sequenceName = "test_id_seq")
    private Integer id;

}

问题是,如果我未在@SequenceGenerator批注中包括分配大小,则这些实体似乎具有-49 + nextval('test_id_seq':: regclass)形式的ID。添加新实体也会增加test_id_seq。我已经比较了休眠时使用的sql,无论是否使用了分配大小,它都是完全相同的。

1)这是怎么发生的?

2)在休眠状态下似乎使用相同的sql时,数据库id如何最终变得如此不同?

0 个答案:

没有答案