0 Tage Serie
java / intermediate
Snippet

Lifecycle-Hooks verarbeiten mit JPA Entity Listeners

Entity Listener ermöglichen die Ausführung von Logik zu bestimmten Zeitpunkten im Lebenszyklus einer JPA-Entität, wie z. B. vor dem Speichern oder nach dem Laden, ohne die Entitätsklasse selbst zu verändern.

snippet.java
java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@Entity
@EntityListeners(AuditListener.class)
public class Product {
@Id private Long id;
private String name;
}
public class AuditListener {
@PrePersist
public void setCreatedDate(Object entity) {
System.out.println("About to persist entity: " + entity);
}
@PostLoad
public void logLoad(Object entity) {
System.out.println("Entity loaded from DB: " + entity);
}
}
spring
Erklärung
1
@EntityListeners
Gibt die Klasse an, die Lifecycle-Callback-Methoden für die Entität enthält.
2
@PrePersist
Markiert eine Methode, die ausgeführt wird, bevor die Entität erstmals in der Datenbank gespeichert wird.
3
@PostLoad
Markiert eine Methode, die unmittelbar nach dem Abrufen einer Entität aus der Datenbank ausgeführt wird.