0
問題は異なるコレクションでクエリを検索することです。モルフィア。異なるコレクション(種類)を使用してクエリを複製する方法
あり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;
}
更新
反射して正常に動作しますが、私は理由もパフォーマンスのこの汚い方法のようにいけません。