How to decorate EntityManager on Spring Boot
up vote
0
down vote
favorite
I would like to decorate the entity manager so that I can do things before/after delegating the call to the persist method of the original one. Besides that, it is mandatory that the JPA repositories (interfaces inheriting JpaRepository
use this decorated EntityManager
). Solutions using aop/interception would be welcome as well as long as JPA repositories use the intercepted EntityManager
.
For the sake of simplicity bellow is an example of the EntityManager
decorator, bear in mind that even though I use this decorator to log something before/after delegating the call in the real scenario, I will not be using the decorator for logging.
public class CustomEntityManager implements EntityManager {
private EntityManager entityManager;
public CustomEntityManager(EntityManager entityManager) {
this.entityManager = entityManager;
}
...
public void persist(Object entity) {
System.out.println("Before persisting...");
entityManager.persist(entity);
System.out.println("After persisting...");
}
...
}
spring-boot jpa spring-data-jpa entitymanager
add a comment |
up vote
0
down vote
favorite
I would like to decorate the entity manager so that I can do things before/after delegating the call to the persist method of the original one. Besides that, it is mandatory that the JPA repositories (interfaces inheriting JpaRepository
use this decorated EntityManager
). Solutions using aop/interception would be welcome as well as long as JPA repositories use the intercepted EntityManager
.
For the sake of simplicity bellow is an example of the EntityManager
decorator, bear in mind that even though I use this decorator to log something before/after delegating the call in the real scenario, I will not be using the decorator for logging.
public class CustomEntityManager implements EntityManager {
private EntityManager entityManager;
public CustomEntityManager(EntityManager entityManager) {
this.entityManager = entityManager;
}
...
public void persist(Object entity) {
System.out.println("Before persisting...");
entityManager.persist(entity);
System.out.println("After persisting...");
}
...
}
spring-boot jpa spring-data-jpa entitymanager
if i understand you correctly, you try to find something like this springboottutorial.com/…
– Ishikawa Yoshi
Nov 7 at 11:54
PrePersist and PostPersist annotations may also be of help.
– C. Weber
Nov 7 at 12:27
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I would like to decorate the entity manager so that I can do things before/after delegating the call to the persist method of the original one. Besides that, it is mandatory that the JPA repositories (interfaces inheriting JpaRepository
use this decorated EntityManager
). Solutions using aop/interception would be welcome as well as long as JPA repositories use the intercepted EntityManager
.
For the sake of simplicity bellow is an example of the EntityManager
decorator, bear in mind that even though I use this decorator to log something before/after delegating the call in the real scenario, I will not be using the decorator for logging.
public class CustomEntityManager implements EntityManager {
private EntityManager entityManager;
public CustomEntityManager(EntityManager entityManager) {
this.entityManager = entityManager;
}
...
public void persist(Object entity) {
System.out.println("Before persisting...");
entityManager.persist(entity);
System.out.println("After persisting...");
}
...
}
spring-boot jpa spring-data-jpa entitymanager
I would like to decorate the entity manager so that I can do things before/after delegating the call to the persist method of the original one. Besides that, it is mandatory that the JPA repositories (interfaces inheriting JpaRepository
use this decorated EntityManager
). Solutions using aop/interception would be welcome as well as long as JPA repositories use the intercepted EntityManager
.
For the sake of simplicity bellow is an example of the EntityManager
decorator, bear in mind that even though I use this decorator to log something before/after delegating the call in the real scenario, I will not be using the decorator for logging.
public class CustomEntityManager implements EntityManager {
private EntityManager entityManager;
public CustomEntityManager(EntityManager entityManager) {
this.entityManager = entityManager;
}
...
public void persist(Object entity) {
System.out.println("Before persisting...");
entityManager.persist(entity);
System.out.println("After persisting...");
}
...
}
spring-boot jpa spring-data-jpa entitymanager
spring-boot jpa spring-data-jpa entitymanager
edited Nov 7 at 11:59
M. Deinum
66.3k11133146
66.3k11133146
asked Nov 7 at 11:14
Carlos Adriano Portes
61
61
if i understand you correctly, you try to find something like this springboottutorial.com/…
– Ishikawa Yoshi
Nov 7 at 11:54
PrePersist and PostPersist annotations may also be of help.
– C. Weber
Nov 7 at 12:27
add a comment |
if i understand you correctly, you try to find something like this springboottutorial.com/…
– Ishikawa Yoshi
Nov 7 at 11:54
PrePersist and PostPersist annotations may also be of help.
– C. Weber
Nov 7 at 12:27
if i understand you correctly, you try to find something like this springboottutorial.com/…
– Ishikawa Yoshi
Nov 7 at 11:54
if i understand you correctly, you try to find something like this springboottutorial.com/…
– Ishikawa Yoshi
Nov 7 at 11:54
PrePersist and PostPersist annotations may also be of help.
– C. Weber
Nov 7 at 12:27
PrePersist and PostPersist annotations may also be of help.
– C. Weber
Nov 7 at 12:27
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53188373%2fhow-to-decorate-entitymanager-on-spring-boot%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
if i understand you correctly, you try to find something like this springboottutorial.com/…
– Ishikawa Yoshi
Nov 7 at 11:54
PrePersist and PostPersist annotations may also be of help.
– C. Weber
Nov 7 at 12:27