Annotation Interface PostLoad


@Target(METHOD) @Retention(RUNTIME) public @interface PostLoad
Declares a callback method for the corresponding lifecycle event. This annotation may be applied to methods of an entity class, a mapped superclass, or a callback listener class.

The @PostLoad callback occurs:

The non-relationship state of an entity is always set to the values just retrieved from the database before the @PostLoad method is invoked. The @PostLoad method is invoked before a newly loaded entity instance is returned or made accessible to the application.

The following rules apply to lifecycle callback methods:

  • Lifecycle callback methods may throw unchecked/runtime exceptions. A runtime exception thrown by a callback method that executes within a transaction causes that transaction to be marked for rollback if context is joined to the transaction.
  • Lifecycle callbacks can invoke JNDI, JDBC, JMS, and enterprise beans.
  • A lifecycle callback method may modify the non-relationship state of the entity on which it is invoked.
  • In general, the lifecycle method of a portable application should not invoke EntityManager or query operations, access other entity instances, or modify relationships within the same persistence context

It is implementation-dependent whether callback methods are invoked before or after the cascading of the lifecycle events to related entities.

Since:
1.0