为什么我的JPA Hibernate Postgres数据库中的ID跳过ID值?

时间:2018-12-11 17:09:01

标签: spring postgresql hibernate jpa kotlin

我有这些表,这些表是由JPA和Hibernate在使用这些spring配置启动时自动生成的。

这是我的application.yml配置:

spring:
  datasource:
    url: "jdbc:postgresql://postgres-cinema:5432/postgres"
    username: "postgres"
    password: ""
    driver-class-name: "org.postgresql.Driver"
  jpa:
    database: "postgresql"
    hibernate:
      ddl-auto: "update"

这些是我的Entity类:

@Entity
class Cinema(

    @get:Id @get:GeneratedValue
    var id: Long? = null,

    @get:NotBlank @get:Size(max = 128)
    var name: String,

    @get:NotBlank @get:Size(max = 128)
    var location: String? = null,

    @get:OneToMany(mappedBy = "cinema", cascade = [CascadeType.ALL], fetch = FetchType.EAGER)
    var rooms: MutableSet<Room> = mutableSetOf()
)

@Entity
class Room(

    @get:Id @get:GeneratedValue
    var id: Long? = null,

    @get:NotBlank @get:Size(max = 128)
    var name: String,

    @get:ElementCollection
    @get:NotNull
    var seats: MutableSet<String>,

    @get:ManyToOne(fetch = FetchType.EAGER)
    @get:JoinColumn(name = "cinema_id")
    var cinema: Cinema? = null
)

当我创建一个新的电影院时,其ID为1 接下来,我要创建一个新房间,它的ID为2。

我在对实体表做些错误的事情吗?这些不应该是具有自己ID的独立表吗?

0 个答案:

没有答案