我是 Java 和 Google App Engine (java) 的初学者。
我正在尝试制作一个链表类型的模型来将实体链接在一起。例如,我希望 Class Fruit 能够持有或接收一系列水果,如 Apple、Oranges 等。我正在考虑使用实体键作为类 Fruit 和类 Apple 或类 Orange 之间的指针。有没有办法获取实体的密钥,并将其放入另一个实体?更好的是,抓取多个实体键并将其放入一个实体中?
我是 Java 和 Google App Engine (java) 的初学者。
我正在尝试制作一个链表类型的模型来将实体链接在一起。例如,我希望 Class Fruit 能够持有或接收一系列水果,如 Apple、Oranges 等。我正在考虑使用实体键作为类 Fruit 和类 Apple 或类 Orange 之间的指针。有没有办法获取实体的密钥,并将其放入另一个实体?更好的是,抓取多个实体键并将其放入一个实体中?
您也可以使用具有类似 MongoDB 的零配置语法的Mungo-Appengine来执行此操作:
Mungo mungo = new Mungo();
DB fruitsDB = mungo.getDB("fruitsDB");
DBCollection fruits = fruitsDB.createCollection("fruits");
DBObject apple = new BasicDBObject("name", "apple")
.put("color", "red");
DBObject orange = new BasicDBObject("name", "orange")
.put("color", "orange")
.put("weight", 1);
DBObject myBasket = new BasicDBObject("name", "myBasket")
.put("fruits", Lists.newArrayList(apple, orange)); // Google Guava
fruits.insert(myBasket); // Done!
DBObject theBasket = fruits.findOne("{'name' : 'myBasket'}"); // Get it
List<DBObject> theFruits = theBasket.get("fruits");
希望这可以帮助。
看看 Objectify - https://code.google.com/p/objectify-appengine/他们在数据存储之上有一个非常好的包装器,可以为您处理这些。