0 Tage Serie
java / expert
Snippet

Globales Repository-Verhalten mit SimpleJpaRepository anpassen

Durch die Erweiterung von SimpleJpaRepository und die Konfiguration über @EnableJpaRepositories können Sie benutzerdefinierte Methoden wie refresh() automatisch zu jeder Repository-Instanz in Ihrer Anwendung hinzufügen.

snippet.java
java
1
2
3
4
5
6
7
8
9
10
11
12
13
public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRepository<T, ID> {
private final EntityManager entityManager;
public BaseRepositoryImpl(JpaEntityInformation<T, ?> entityInformation, EntityManager entityManager) {
super(entityInformation, entityManager);
this.entityManager = entityManager;
}
@Transactional
public void refresh(T entity) {
entityManager.refresh(entity);
}
}
spring
Erklärung
1
extends SimpleJpaRepository<T, ID>
Erbt die Standard-Implementierung von Spring Data JPA.
2
public void refresh(T entity)
Fügt eine benutzerdefinierte 'refresh'-Methode hinzu, um den Entitätsstatus mit der Datenbank zu synchronisieren.
3
entityManager.refresh(entity)
Direkte Nutzung des EntityManagers für Low-Level-Persistenzoperationen.