在hibernate中@ManyTone联接的情况下如何设置子对象的条件

在hibernate中@ManyTone联接的情况下如何设置子对象的条件,hibernate,spring-data-jpa,Hibernate,Spring Data Jpa,与联系人对象一起,我只想在account.deleteFlag=false存在时获取account对象,如何操作请告诉我。在@OneToMany relation@中有注释,但对于@ManyToOne relation,我得到了类似@JoinFormula的解决方案,但它不起作用。不幸的是@ManyToOne映射不支持@where,如果您想始终排除所有已在任何地方删除的帐户实例在帐户类本身上方添加@Where注释,如下所示: @Entity public class Contact{ @

与联系人对象一起,我只想在account.deleteFlag=false存在时获取account对象,如何操作请告诉我。在@OneToMany relation@中有注释,但对于@ManyToOne relation,我得到了类似@JoinFormula的解决方案,但它不起作用。

不幸的是
@ManyToOne
映射不支持
@where
,如果您想始终排除所有已在任何地方删除的
帐户
实例在
帐户
类本身上方添加
@Where
注释,如下所示:

@Entity    
public class Contact{
@id
private long id;
@ManyToOne
@JoinColumn(name = "account_id")
private Account account;}

您说您尝试了@JoinFormula,但它不起作用-您能提供您在那里尝试的实现以及它的问题吗?@ManyToOne@JoinColumn(name=“account\u id”,columnDefinition=“bigint”)@JoinFormula(“select*from account where deleteFlag=false”)私人帐户;联系人具有帐户id这就是为什么它会找到具有该帐户id的帐户,然后它会引发类似javax.persistence.EntityNotFoundException的异常:无法找到id为2的帐户
@Entity
@Where(clause = "deleteFlag=0")
public class Account { ... }