我刚冬眠,所以我都不知道要搜索什么。我发现一些示例将@Where
与静态查询结合使用,但我什至无法正确表达。
我希望这有一个我可以理解的简单解决方案。给定两个类A
和B
,如下所示,B
有两个字段引用单个A
,然后是A
的可选列表。我想从可选列表中排除单个A
。
@Entity
public class A {
@Id
private int id;
@ManyToOne
@JoinColumn(name="b_id")
private B b;
private String x;
private double y;
// getters and setters are omitted
}
@Entity
public class B {
@Id
private int id;
private String name;
@oneToOne
private A mainA;
@OneToMany(mappedBy="b", cascade=CascadeType.ALL)
private List<A> optionalAs = new ArrayList<>();
}
就目前而言,optionalAs
包括与A
相关的所有B
。我希望optionalAs
列表排除 mainA
,最好不要将其从列表中明确删除。
有没有办法用注解来表达这一点?