Re: Hibernate: проставить внешний ключ
От: werdnar  
Дата: 25.01.10 09:04
Оценка:
Здравствуйте, dya-victor, Вы писали:

DV>Добрый день!


DV>Пусть у нас есть два класса: Person и Address. У одного Person есть несколько Address. Примерно такая схема:

DV>
DV>class Person {
DV>   private Long id;
DV>}

DV>class Address {
DV>  private Long id;
DV>  private Person person;
DV>}
DV>

DV>Возьмем ситуацию, когда объект Person у меня не загружен, но есть в БД и я знаю его id. Мне нужно сохранить новый объект Address и проставить ссылку на Person. Делаю так:
DV>
DV>Person person = new Person();
DV>person.setId(123);

DV>Address address1 = new Address();
DV>address1.setPerson(person);

DV>addressDao.save(address1);
DV>

DV>При этом, перед insert-ом в БД, hibernate делает выборку объекта Person, что в принципе верно. Но. Можно как-нибудь проставить внешний ключ, не выполняя select?

попробуй поиграться с каскадностью
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.