У меня возникла ситуация, когда мне нужно повторно присоединить отдельные объекты к сеансу спящего режима, хотя объект с тем же идентификатором МОЖЕТ уже существовать в сеансе, что вызовет ошибки.Каков правильный способ повторного прикрепления отдельных объектов в Hibernate?
Прямо сейчас, я могу сделать одну из двух вещей.
getHibernateTemplate().update(obj)
Это works если и only если an object does не already exist в hibernate session. Исключения выдаются с указанием объекта с данным идентификатором, который уже существует в сеансе, когда он мне понадобится позже.getHibernateTemplate().merge(obj)
Это работает тогда и только тогда, когда объект существует в сеансе спящего режима. Исключения выбрасываются, когда мне нужно, чтобы объект был в сеансе позже, если я его использую.
Учитывая эти два сценария, как я могу в общих чертах присоединять сеансы к объектам? Я не хочу использовать исключения для управления потоком раствора этой проблемы, поскольку должна быть более элегантным решением ...
saveOrUpdate выдаст исключение, как и обновление. – Mark