【发布时间】:2019-11-03 06:01:01
【问题描述】:
我有一个基本的 spring 应用程序,带有一个简单的实体。我有一个 flyway 脚本,用于创建 postgres 表,并添加一些起始数据。
create table user (
id serial primary key,
username varchar (50) unique not null,
password varchar (150) not null
);
insert into user (id, username, password) values (1, 'name', 'somehashed');
insert into etc...
我的实体设置如下:
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id", updatable = false, columnDefinition = "serial")
private Long id;
...
other fields, constructor, getters setters etc...
我的问题是,在启动时,基本实体由 flyway 持久化,但是在尝试保存新实体时,hibernate 尝试为其提供 ID 1,尽管它已经被赋予另一个。
我也试过用 SEQUENCE 策略,问题没有得到解决。
【问题讨论】:
标签: postgresql hibernate flyway