我有两个班级:
public class Dog {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent(mappedBy = "dog")
@Element(dependent = "true")
private List<Toy> toys;
}
public class Toy {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent
private Name name;
@Persistent
private Dog dog;
}
1)如果我这样做
Toy toy = new Toy();
toy.setDog(dog); // dog is a Dog class
pm.makePersistent(toy);
我可以通过getToys()从狗那里获得这个玩具吗?
2) 如果我这样做两次
Toy toy = new Toy();
toy.setName("AAA");
toy.setDog(dog);
pm.makePersistent(toy);
两个完全相同的玩具会在日期商店中加倍吗?
谢谢!
答案 0 :(得分:0)
如果你做“toy.setDog”,你还没有将玩具添加到狗的玩具清单......即关系是双向的,你必须设置双方。
完全相同的玩具是什么?如果你添加2个玩具你有2个玩具。他们的领域的价值是无关紧要的,只是身份很重要。