Google appengine 1.3.0 w/java और jdo ...एपेंगिन डेटास्टोर एंटिटी को मेरे ऑब्जेक्ट में कनवर्ट करने का एक तरीका?
1-से-कई स्वामित्व वाले रिश्तों के लिए जेडीओ क्वेरी लिखने की कोशिश करते समय, मैं एक गैर-जेडीओ अवधारणा में आया जो मैंने सोचा था कि वास्तव में स्मार्ट था। पूर्वज प्रश्न Appengine.api.datastore.Query इंटरफ़ेस पैरेंट कुंजी का उपयोग कर क्वेरी की स्कॉइंग करने की अनुमति देता है।
दुर्भाग्यवश क्वेरी से परिणाम संपत्ति सूची के साथ 'Entity' ऑब्जेक्ट्स हैं। क्या एपिस में कोई उपयोग है जो इन इकाइयों में से किसी एक को मेरी जेडीओ ऑब्जेक्ट में परिवर्तित कर देगा या यहां तक कि एक साधारण डीटीओ बीन (जो मेरी जेडीओ ऑब्जेक्ट से मेल खाता है)?
मैंने नीचे दिए गए कोड के साथ इसे मजबूर करने के लिए एक क्रूर लिया है लेकिन डबल लुकअप पसंद नहीं है।
PersistenceManager pm;
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
List<MyObject> results;
com.google.appengine.api.datastore.Query query = new Query("MyObject", KeyFactory.stringToKey(parentId));
query.addFilter("rank", Query.FilterOperator.GREATER_THAN_OR_EQUAL, minRank);
query.addSort("rank");
query.setKeysOnly();
for (Entity anEntity : datastore.prepare(query).asIterable()) {
results.add(pm.getObjectById(MyObject.class, anEntity.getKey()));
}