关于文档,这是一个很好的起点:
http://pre.google.com/appengine/docs/java/overview.html
在http://pre.google.com/appengine/docs/java/datastore/jdo/relationships.html中尊重多对多关系:
我们可以通过维护关系两侧的键集合来建立多对多关系的模型。让我们调整示例,让Food跟踪那些认为它是最受欢迎的人:
人.java
import java.util.Set;import com.google.appengine.api.datastore.Key;// ... @Persistent private Set<Key> favoriteFoods;
Food.java
import java.util.Set;import com.google.appengine.api.datastore.Key;// ... @Persistent private Set<Key> foodFans;
在此示例中,人员维护一组键值,这些值唯一地标识收藏夹中的食物对象,而食品保持一组键值,其唯一地标识认为其收藏夹中食物的对象。使用键值对多对多进行建模时,请注意,保持关系的双方是应用程序的责任:
相册.java
// ...public void addFavoriteFood(Food food) { favoriteFoods.add(food.getKey()); food.getFoodFans().add(getKey());}public void removeFavoriteFood(Food food) { favoriteFoods.remove(food.getKey()); food.getFoodFans().remove(getKey());}


