2

com.google.appengine.api.datastore.Query を使用してデータベース オブジェクトを取得しようとすると、キャスト エラーが発生する理由

例: DatastoreService datastore = DatastoreServiceFactory.getDatastoreService(); クエリ q = 新しいクエリ("ユーザー");

PreparedQuery pq = datastore.prepare(q);

for (Entity entity : pq.asIterable()) {
   User myUser = (User)entity;
}
4

1 に答える 1

3

それをしてはいけない。返されるエンティティは型Entityであり、Java では、ある型を別の型にキャストすることはできません。

クエリでカスタム タイプのオブジェクトを返す場合は、ある種のマッピング フレームワークが必要ですobjectify。データベース操作でクラスを直接使用できます。

于 2012-05-13T18:38:41.637 に答える