2011-11-30 48 views
2

有沒有一種方法可以在「Play!」中鏈接查詢框架而不是手動編寫查詢?Play中的鏈接查詢!框架

是這樣的:

模型M = Model.where( 「姓名」, 「比爾」),其中( 「性別」, 「M」)的第一();

我不知道,因爲我最近從Codeigniter + dmz切換到grails那麼現在到"Play!"和已經有點兒被查詢失望鏈接相比,上述

PS提到的框架:我顯然不是在談論()fetch()來自()方法。

回答

4

沒有與至極一個JpqlSelect對象,你可以做

public static Model findBill() { 
    JpqlSelect select = new JpqlSelect().from("Model").where("name=?").param("Bill").andWhere("gender=?").param("m"); 
    return find(select.toString(), select.getParams().toArray()).first(); 
} 

此幫助還遠遠沒有完成,但它可能適合您的需求

1

你可以用這樣的java.persistence標準API做到這一點:

CriteriaQuery q = JPA.em().getCriteriaBuilder().createQuery(Model.class) 
q.where(<Expression>).where(<Expression>); 
TypedQuery<Model> tq = JPA.em().createQuery(q); 
List<Model> result = tq.getResultList(); 

herehere起動

1

的其他選項可以使用http://www.querydsl.com/與它的JPA集成。

+0

不知道這是否將很好地插入到播放1。 x構建系統 – Somatik

+0

它似乎是[可能](http://stackoverflow.com/questions/7490384/querydsl-and-play-framework)我選擇了另一個答案(因爲表單),但你的可能是最強大的。 –