При вставке/обновлении объекта в режиме гибернации и необходимости обновления изменений только обновляемого объекта можно ли просто установить идентификатор ссылочного объекта, содержащего внешний ключ? например.
Код: Выделить всё
UserRole userRole = new UserRole();
userRole.setId(1);
User user = new User();
user.setUserRole(userRole);
userDao.update(user);
-OR-
userDao.insert(user);
Или мне нужно каждый раз получать полную ссылочную сущность из базы данных? например.
Код: Выделить всё
UserRole userRole = userRoleDao.getById(1);
User user = new User();
user.setUserRole(userRole);
userDao.update(user);
-OR-
userDao.insert(user);
Кажется, оба варианта работают нормально. Но я боюсь, что второй подход скажется на производительности, а первый выглядит как плохой код.
Подробнее здесь:
https://stackoverflow.com/questions/381 ... -hibernate