Так что, согласно моему пониманию, переданный объект в качестве параметра в методе обновления может находиться либо в постоянном состоянии, либо в отключенном состоянии, верно?
Да, вы можете передать постоянный объект или отдельный объектдо update()
.Но update()
влияет только на отсоединенный объект.Вызов update () для постоянного объекта: избыточность , а ничего не делает , поскольку объект уже является постоянным, и его состояние будет автоматически синхронизироваться с БД во время очистки.Таким образом, из вашего кода имя человека может быть обновлено до scott
из-за сброса, но не из-за update ().Вы можете проверить это, удалив update()
, а имя все еще можно обновить до scott
!
update()
влияет только на отсоединенный объект, что может сделать отсоединенный экземпляр постоянным и управляемым сеансом гибернации.