一尘不染

映射带有JPA / Hibernate批注的字符串列表

hibernate

我想做这样的事情:

    @Entity public class Bar {
        @Id @GeneratedValue long id;
        List<String> Foos
    }

并让Foos保持在这样的表中:

foo_bars (
    bar_id int, 
    foo varchar(64)
);

更新:

我知道如何绘制其他实体的图,但是在许多情况下,这太过分了。似乎我所建议的是在没有创建另一个实体或以某个blob列中的所有内容结束的情况下是不可能的。


阅读 246

收藏
2020-06-20

共1个答案

一尘不染

Hibernate术语中,这是“值的集合”或“元素”。有一个(特定于Hibernate的)注释。JPA还不支持此功能。

简而言之,像这样注释您的收藏集:

@CollectionOfElements
@JoinTable(
        table=@Table(name="..."),
        joinColumns = @JoinColumn(name="...") // References parent
)
@Column(name="...value...", nullable=false)

这将创建带有外键和限制的必要表。

2020-06-20