【问题标题】:java Querydsl BooleanBuilder OneToMany queryjava Querydsl BooleanBuilder OneToMany 查询
【发布时间】:2016-12-09 11:27:51
【问题描述】:

使用 spring boot 和 spring JPA 我有一个 Receipt 模型,它与 Store 模式具有 oneToMany 关系:

@Entity
public class Receipt extends Base {

    //other model fields

    @Column(name="email")
    private String Email;

    @ManyToOne
    @JoinColumn(name="store_id")
    private Store Store;

    //getters & setters 
}

我想使用 BooleanBuilder 查找包含电子邮件且属于特定商店的收据。至于电子邮件,我可以简单地说

where.and(q.Email.eq("some@email.com"));

但我不知道如何使用电子邮件和商店 ID 进行搜索。像

where.and(q.Email.eq("some@email.com")).and(q.Store.id.eq(1));

我知道我可以从数据库中获取 store 对象,然后将其传递给 where,但这是唯一的方法吗?

【问题讨论】:

  • 愿意与我们分享什么是“BooleanBuilder”(即它在什么包中)?
  • @NeilStockton 这是一个 querydsl 包。忘了提,但编辑了问题

标签: java spring jpa querydsl


【解决方案1】:

曾经对我有用的是单独映射外键:

@Column(name="store_id")
private Integer storeId;

你应该可以打电话了

where(q.Email.eq("some@email.com")).and(q.storeId.eq(1));

【讨论】:

    猜你喜欢
    • 2017-03-15
    • 2021-09-28
    • 1970-01-01
    • 1970-01-01
    • 2015-06-24
    • 2016-10-31
    • 2016-08-07
    • 1970-01-01
    • 2023-04-05
    相关资源
    最近更新 更多