JPA Method
in jakarta.persistence.EntityManager

T getReference(
  T entity
)


Obtain a reference to an instance of the entity class of the given object, with the same primary key as the given object, whose state may be lazily fetched. The given object may be persistent or detached, but may be neither new nor removed.

If the requested instance does not exist in the database, the EntityNotFoundException is thrown when the instance state is first accessed. (The persistence provider runtime is permitted but not required to throw the EntityNotFoundException when getReference() is called.)

This operation allows the application to create an association to an entity without loading its state from the database.

The application should not expect the instance state to be available upon detachment, unless it was accessed by the application while the entity manager was open.

Parameters:
entity - a persistent or detached entity instance
Return:
a reference to the entity instance
Throws:
IllegalArgumentException - if the given object is not an entity, or if it is neither persistent nor detached
EntityNotFoundException - if the entity state cannot be accessed
Since:
JPA 3.2