У меня есть аннотация для пользовательского метода (@EventListener), который я использую в методе внутри класса с аннотацией @Transactional.Имеет ли примечание @Transactional Spring примечание других аннотаций
Ниже приведен пример класса
@Component
@Transactional
public class someClass {
@EventListener
public void someMethod() {
}
}
Класс находится в пакете, включают в контексте файлов компонент сканирования. В другом классе, который реализует ApplicationContextAware, я проверяю методы классов, если у них есть аннотация @EventListener. По какой-то странной причине, когда @Transactional присутствует в классе, моя пользовательская аннотация теряется.
Это, как я проверить метод аннотаций:
общественного объекта postProcessAfterInitialization (боб Object, String beanName) бросает BeansException {
System.out.println("SCANNING :::::: " + beanName);
for (Method method : bean.getClass().getMethods()) {
for(Annotation a : method.getAnnotations()) {
System.out.println("\t>>>>> " + a.toString());
}
...
Есть ли способ использовать @Transactional без него портя с другими аннотациями метода в классе, который он комментирует?
Редактировать: Я нашел это после того, как я разместил Spring - @Transactional - What happens in background?. Кажется, что-то вроде прокси создается, и это может привести к тому, что мои аннотации «исчезнут». Есть ли способ получить ссылку на исходный класс?