2011-11-30 14 views
2

には、「再生」でクエリをチェーンする方法があります。手動でクエリを書くのではなく、フレームワーク?Playでクエリを連鎖させる!フレームワーク

何か等:

モデルM = Model.where( "名前"、 "ビル")第一( "性別"、 "M")();。。私は明らかに話ではない:私は最近"Play!"になりました、その後grailsCodeigniter + dmzから切り替えて

PS上記のフレームワークに比べて連鎖するクエリに失望ビットとなっているので、私は疑問に思う

fetch()および()メソッドからです。

答えて

4

がありますが、このヘルパーは完全には程遠いです

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(); 
} 

行うことができますウィッヒとJpqlSelectオブジェクトですが、それかもしれスーツニーズ

1

あなたはそのようjava.persistence基準のAPIでそれを行うことができます:それはJPA統合だとhttp://www.querydsl.com/を使用することができ、開始

1

他のオプションの

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

+0

それは遊び1にうまくプラグインかどうかわかりません。 x build system – Somatik

+0

私は(フォームのために)別の答えを選んだが、おそらくあなたのものがおそらく最も強力であると思われる。[http://stackoverflow.com/questions/7490384/querydsl-and-play-framework] –

関連する問題