0
問題是關於通過查詢在不同集合中進行搜索。Morphia。如何克隆不同集合的查詢(種類)
有一個在AdvancedDatastore
接口中的方法:
<T> Query<T> createQuery(String kind, Class<T> clazz, DBObject q);
但它只能給出baseQuery創建查詢,我需要查詢的,但不同的DBCollection場完整克隆。 有什麼建議嗎?
這裏是我的方法來轉換查詢:
public Query<Vacancy> convertQuery(Query<T> query) {
QueryImpl<T> queryImpl = (QueryImpl<T>) query;
DBObject dbO = queryImpl.getQueryObject();
Query<T> our_query = ((AdvancedDatastore)this.getDatastore()).createQuery("AnotherCollectionName", T.class, dbO);
return our_query;
}
更新
正常工作與反思,但我不喜歡,因爲性能比較的這種骯髒的方式。