Владели отношениями один-ко-многим - PullRequest
0 голосов
/ 02 сентября 2011

У меня есть два класса:

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

Будут ли две одинаковые игрушки вдвойне в магазине?
Спасибо!

1 Ответ

0 голосов
/ 02 сентября 2011
  1. Если вы делаете "toy.setDog", вы не добавляете игрушку в Список игрушек ... т.е. отношение является двунаправленным, и вы должны установить обе стороны.

  2. Какие именно игрушки?Если вы добавите 2 игрушки, у вас есть 2 игрушки.Значения их полей не имеют значения, важна только идентичность.

...