我正在尝试以一种既适用于休眠 JPA 又适用于 GAE JPA 的方式对我的对象进行建模。我有一个Item
具有属性列表的类。我需要找到所有具有特定属性的项目。例如:
@Entity
public class Item {
@Id
public Long id;
@ManyToMany(name="properties")
public List<Property> props;
}
@Entity
public class Property {
@Id
public Long id;
public String value;
}
我的查询就像
select i from Item i join i.props p where p.id=1 and p.id=3 and p.id=10
其中 1、3 和 10 是我要查找的属性的 ID。例如,我可以拥有书籍项目并查找以下属性:Property(1, "category:book") Property(3, "text:anatomy"), Property(10, "text:brain")。您可以将属性视为项目的标签。
JAE JPA 不支持多对多关系。有什么建议如何建模吗?
先感谢您。