首页 > 解决方案 > 与字符串列表的多对多关系?可能吗?

问题描述

我想将字符串标签列表添加到实体对象:

@ManyToMany
private List<String> tags;

是否可以在不创建新实体对象标签 {id,tag} 的情况下做到这一点?

可以OneToMany使用@ElementCollection注释来建立关系。但是有可能建立ManyToMany关系吗?
任何帮助将不胜感激!!

标签: javahibernatejpa

解决方案


这是不可能的。

@ElementCollection 只能与 OneToMany 关系一起使用。 https://en.wikibooks.org/wiki/Java_Persistence/ElementCollection

@ElementCollection 可以与基本类型或可嵌入类一起使用。 https://docs.oracle.com/javaee/6/api/javax/persistence/ElementCollection.html

@ManyToMany 只能用于 Entity 类。看到@ManyToMany 带注释的字符串列表?有可能吗?

解决方案是将字符串包装在具有 id 的实体中。


推荐阅读