Google App Engine Java中的链接列表模型

时间:2013-07-24 16:24:32

标签: google-app-engine transactions google-cloud-datastore

我是Java和Google App Engine(java)的初学者。

我正在尝试制作链接列表类型的模型以将实体链接在一起。 例如,我希望Class Fruit能够持有或收集水果列表,如Apple,Oranges等。 我正在考虑使用实体键作为Class Fruit,Apple类或Orange类之间的指针。 有没有办法获取实体的密钥,并将其放入另一个实体? 更好的是,抓住多个实体密钥并将其放入一个实体中?

2 个答案:

答案 0 :(得分:0)

看一下Objectify - https://code.google.com/p/objectify-appengine/他们在数据存储区顶部有一个非常好的包装器来处理这个问题。

答案 1 :(得分:0)

您也可以使用Mungo-Appengine执行此操作,该{{3}}具有与零配置类似的MongoDB语法:

  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");

希望这有帮助。