java - 不能在一对多关系 hibernate 注释中插入空值

标签 java hibernate orm annotations

我有一个类 A{Set b .....} 将类 B 的引用保存为 Set。它是一对多的关系。 这两个类在 oracle 中都有音序器。我在 hibernate 注释中将级联全部放入。当我保存 A 类时,它给了我无法插入 null B.a_id 的错误。 A-id 在我的数据库中不可为空。我怎样才能维持这种关系。

最佳答案

This is a unidirectional relationship from A->B. a_id column in table B is not nullable. When hibernate tries to save class B, it not able to find value for a_id.

好吧,您是否尝试过使 JoinColumnnullable

@OneToMany 
@Cascade({CascadeType.ALL}) 
@JoinColumn(name="A_ID", nullable=false)
private Set<B> b;

另见

关于java - 不能在一对多关系 hibernate 注释中插入空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3724719/

相关文章:

java - 与 mediaUrl 的 URL 连接失败,收到错误消息意外的状态行 : ICY 200 OK on KitKat

java - Hibernate 不在反面缓存我的 OneToOne 关系

java - JPA : EntityManager is taking too long to save the data

java - MongoDB 是否会复制具有相同数据的子文档?

java - 使用额外信息登录 Android 中的 Sentry

java - Kafka 错误连接到节点 ubuntukafka :9092 (id: 0 rack: null) (org. apache.kafka.clients.NetworkClient) java.net.UnknownHostException:

java - 等待然后接收文本字段输入而不卡住 GUI

java - org.hibernate.exception.ConstraintViolationException : Column 'pacientId' cannot be null

java - Hibernate、Persistence 和@OneToMany 和@ManyToOne 注释问题

sql - 如何使用 Kotlin 的暴露 ORM 获得具有正确行为的createdAt和lastModified字段?