XML Schema-based Aspect implementation — это способ реализации Aspect-Oriented Programming (AOP) в Spring с использованием обычных Java-классов и XML-файлов конфигурации вместо аннотаций.
Этот подход отличается от Annotation-based AOP способом конфигурации. Однако оба достигают одних и тех же целей AOP — разделения кросс-функциональных задач и бизнес-логики.
XML-based аспекты конфигурируются с помощью элементов схемы Spring AOP:
<aop:aspect> — определяет аспект с id и ссылкой на бин<aop:pointcut> — указывает, где должен применяться adviceПример конфигурации:
<aop:aspect id="testAspect" ref="testBean" />
<aop:pointcut id="testPointcut" />
Чтобы использовать XML Schema-based аспекты, нужно импортировать Spring AOP schema в конфигурационный файл.
Необходимые объявления namespace:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
Этот подход полезен, когда:
Аспекты на основе XML Schema требуют использования аннотированных Java-классов, тогда как аспекты на основе аннотаций используют обычные Java-классы с XML-конфигурацией.
Новый — ещё не проверен сообществом
Вы