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
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;}@Transactionalpublic 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.