繁体   English   中英

Spring Data JPA过滤

[英]Spring Data JPA filtering

我有一个像下面的控制器。

public String getAccountsFilter(
    @PathVariable("cardHolderId") String cardHolderId,
    @RequestParam(value = "accountType", required = false) String accountType,
    @RequestParam(value = "name", required = false) String name)

AccountEntity如下

public class AccountEntity implements Serializable {
    private static final long           serialVersionUID = 1L;
    private String                      id;
    private String                      accounttype;
    private Date                        endDate;
    private boolean                     active;
    private PlanEntity                  planEntity;
    private Set<TransactionEntryEntity> transactionEntry = new HashSet<TransactionEntryEntity>();

我为过滤idaccountType其易于使用findByIdAndAccountType()方法,并自动生成查询。

但是,如果我想使用idname进行过滤,这是Plan (AccountEntity.PlanEntity.name)属性Plan (AccountEntity.PlanEntity.name) ,这不是Plan (AccountEntity.PlanEntity.name)容易的事,因为name来自子表。 我该如何达到这个标准?

假设正在通过@OneToOne或@OneToMany等对PlanEntity和TransactionEntryEntity进行注释

您可以在AccountEntity信息库中的一种方法中执行以下操作

@Query("select a from AccountEntity a where a.planEntity.name = :name")
public aMethod( @Param("name") String name)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM