我试图建模一个一对多的关系,其中外键是复合键的一部分。不幸的是,我遇到了以下错误消息:
第一个月
我的实体如下:
@Entity
@Table(name = "point_in_time")
class PointInTime(
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
var id: Long,
val title: String,
val note: String,
@OneToMany(mappedBy = "symptom")
val symptoms: Set<Symptom>
) {
@field:Column(updatable = false)
val createdAt: Instant = Instant.now()
}
@Entity
@Table(name = "symptom")
@IdClass(SymptomId::class)
class Symptom(
@ManyToOne(optional = false)
@Id
@JoinColumn(name = "point_in_time_id", nullable = false)
val pointInTime: PointInTime,
@Id
val category: String,
@Id
val symptom: String,
val strength: Strength
)
class SymptomId (
val pointInTime: Long,
val category: String,
val symptom: String
): Serializable
这个异常的原因是什么,我如何避免它?
1条答案
按热度按时间qyzbxkaa1#
这似乎是其中一个依赖项中的一个简单bug。我通过从spring Boot 版本3. 1. 4到3. 2. 1修复了这个问题。