2012-03-08 66 views
0

我想利用EclipseLink表達式,因爲我發現它很方便地動態組合查詢條件。但是,必須使用ReadAllQuery,它沒有QueryHint(用於批處理)選項,這是我的應用程序的必須選項。EclipseLink表達式困境

另一方面,要使用具有此提示功能的JPA查詢,您必須放開EclipseLink表達式工具。

什麼是串聯使用EclipseLink Expression和QueryHint的方式?

它似乎ReadAllQuery有幾個相關的方法來設置抓取選項,但如果你谷歌它,你什麼都找不到,但從源代碼庫。

回答

1

批讀取與這裏的原生的EclipseLink查詢框架文獻中描述: http://wiki.eclipse.org/Using_Basic_Query_API_%28ELUG%29#Using_Batch_Reading

您也可以建立自己的查詢對象,然後將其設置爲使用EJBQueryImpl setDatabaseQuery(查詢)方法執行JPA查詢對象。這將允許你以後使用JPA setHint api,但是我發現本機api提供了更多的控制權,並且只能用它來執行EntityManager的查詢。 EJBQueryImpl是EclipseLink JPA查詢實現,所以您可能需要使用unwrap方法在容器上獲取​​它。

+0

非常有幫助,謝謝。 – Lopakhin 2012-03-09 03:13:06