I have a JPA entity already persisted in the database.
I would like to have a copy of it (with a different id), with some fields modified.
What is the easiest way to do this? Like:
- setting it’s
@Idfield tonulland persisting it will work? - will I have to create a clone method for the entity (copying all fields except the
@Id)? - is there any other approach (like using a cloning framework)?
Use
EntityManager.detach. It makes the bean no longer linked to the EntityManager. Then set the Id to the new Id (or null if automatic), change the fields that you need and persist.