Я пытаюсь перехватить вызовы метода find в EntityManager .
public Map<String, String> get() {
Map<String, String> map = new HashMap<>();
DleTestData data = em.find(DleTestData.class, "1");
map.put(data.getId(), data.getName() + " : " + data.getRegion());
return map;
}
У меня есть такой совет:
@Aspect
@Configuration
public class MyAdvice {
@Around("execution(* javax.persistence.EntityManager.*(..))")
public Object aroundFind(ProceedingJoinPoint joinPoint) {
System.err.println("before em find called : " + joinPoint);
Object o = null;
try {
o = joinPoint.proceed();
System.err.println("after em find advice called : " + joinPoint);
} catch (Throwable e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return o;
}
}
Выходные вызовы show перехвачены, но метод find не совпадает в pointcut.
Можете ли вы подсказать, что я здесь делаю не так?
выход:
до того, как они найдут вызов: выполнение (Метамодель
javax.persistence.EntityManager.getMetamodel ()) после того, как они найдут совет
называется: казнь (метамодель
javax.persistence.EntityManager.getMetamodel ())