Как склонировать объект в Hibernate

clonesВопрос небольшой, но довольно популярный — как загрузить объект из базы и сохранить его точную копию, но с другим id?

Решение простое — необходимо загрузить требуемый объект, через Session.get()  или запрос, не важно. Затем отсоединить его от persistence context вызовом  detach(), сбросить id и сохранить: