私はGoogle App Engineデータストア - 効率的にJavaの子テーブルのキーから親エンティティを選択する方法
、プレゼンテーション Building Scalable, Complex Apps on App EngineからJavaへこのPythonコードを変換しようとしていますが、これを行うにGAEJのサポートはありますか?
indexes = db.GqlQuery("SELECT __key__ FROM MessageIndex " "WHERE receivers = :1", me)
keys = [k.parent() for k in indexes]
messages = db.get(keys)
以下はJavaでの実装です。これらの機能とパフォーマンスは賢明ですか?もし私がたくさんの鍵を持っていたらどうなりますか?
Query query1 = new Query("MessageIndex");
query1.setKeysOnly();
query1.addFilter("receivers", FilterOperator.EQUAL, me);
PreparedQuery pq2 = datastore.prepare(query1);
Iterable<Entity> entities = pq2.asIterable();
HashSet<Key> keys = new HashSet<Key>();
for (Entity en : entities)
keys.add(en.getParent());
Query query2 = new Query("Messages");
query2.addFilter("__key__", FilterOperator.IN, keys);
あなたが客観を使用して検討していますか? JDOやJPAよりもはるかに苦痛が少ない。 –
上記のスニペットをobjectifyと同等のものは何でしょうか? –
私はJavaを自分で使っていないので、実際には言えませんでしたが、Objectifyのドキュメントにはたくさんの例があります。 –