【问题标题】:How to filter data in Hibernate many to many mapping如何在 Hibernate 多对多映射中过滤数据
【发布时间】:2014-10-29 17:25:37
【问题描述】:
我有一个表用户,其中包含组和公司的映射。
User{
int id;
private Set groups;
private Set companies;
}
集团和公司都有一个名为“已删除”的文件,用于了解实体的状态。我已经用 XML 完成了映射,现在我想在检索用户记录时只检索那些未删除的组和公司。 (删除=假)
我只是陷入了困境,所以请帮帮我。
谢谢。
【问题讨论】:
标签:
java
hibernate
orm
filter
mapping
【解决方案1】:
虽然您可以使用过滤器,但您需要为每个会话手动启用它们。
一个更简单的方法是使用@Where:
User{
int id;
@Where(clause="deleted <> true")
private Set groups;
@Where(clause="deleted <> true")
private Set companies;
}
这样你可以过滤掉被删除的孩子。