2016-12-09 2 views
0

Mit Federverschluß und Feder JPA ich eine Quittung Modell haben, die eine OneToMany Beziehung mit Store-Modus hat:java Querydsl BooleanBuilder OneToMany Abfrage

@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 
} 

und ich möchte BooleanBuilder verwenden, um eine Quittung zu finden, die eine E-Mail hat und gehört zu einem bestimmten Geschäft. Was E-Mail sagen, ich kann einfach

where.and(q.Email.eq("[email protected]")); 

aber ich weiß nicht, wie kann ich mit dem E-Mail-& Store Id suchen. so etwas wie

where.and(q.Email.eq("[email protected]")).and(q.Store.id.eq(1)); 

Ich weiß, ich kann das Speicherobjekt aus der Datenbank erhalten und gibt es dann zu where aber ist, dass der einzige Weg?

+0

Versorgung mit uns zu teilen zu nennen, was „BooleanBuilder“ ist (also das, was Paket ist es in)? –

+0

@NeilStockton Es ist ein Querydsl-Paket. vergaß es zu erwähnen, aber editierte die Frage –

Antwort

0

Was einmal für mich gearbeitet wurde separat mit dem Fremdschlüssel zur Karte:

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

Sie sollten dann in der Lage sein

where(q.Email.eq("[email protected]")).and(q.storeId.eq(1));