java - 如何使 JPA 将 List<Element> (大小仅为 0 或 1)解释为单个元素

标签 java jpa hibernate-mapping

class Entity {
    private InnnerEntity innerEntity;
}

我以前在 JPA 中有上述结构,但现在我必须将其更改为集合,例如:

class Entity {
    private List<InnnerEntity> innerEntity;
}

此列表将仅包含 1 或 0 个元素。因此,我需要让 JPA 像以前一样使用该结构。我的意思是仍然进行一对一的映射,或者在其他情况下将其作为嵌入式实体。 这可能吗?

最佳答案

您可以使用 Bean 验证将集合的大小限制为 1,但您必须使用 OneToMany,因为 OneToOne 不适用于集合:

class Entity {

    @Size(1)
    @OneToMany
    private List<InnnerEntity> innerEntity;

}

关于java - 如何使 JPA 将 List<Element> (大小仅为 0 或 1)解释为单个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59498840/

相关文章:

java - 未找到 GWT Java MySQL 选择查询列但在 phpMyAdmin 中正常

java servlet 编译错误

java - 为什么 gradle 不会覆盖不同 Android 风格的 Java 类?

java - JPA GenerationType.AUTO 不考虑具有自动增量的列

grails - 如何将引用映射到具有复合键ID的对象

java - OSNotificationPayload 无法转换为 JSONObject

java - 如何隐藏数据库密码?

mysql - JPA/Hibernate 查询执行时间太长

java - Java 中的 Hibernate 映射

java - Hibernate 在保存实体时抛出 TransientPropertyValueException