Aplicar AOP con JavaConfig (AspectJExpressionPointcut)
Hace poco me toco tocar un componente en dónde tuve que aplicar un aspecto, la última vez que lo hice lo configuré con el namespace de AOP de Spring, pero estz vez quise hacerlo todo con JavaConfig; he aquí lo que hice:
El XML era este:
<aop:config>
<aop:pointcut expression="execution(* com.makingdevs.service..**.*(..))"
id="monitoringPointcut" />
<aop:advisor advice-ref="monitoringAdvice" pointcut-ref="monitoringPointcut" />
</aop:config>
Y el aspecto en configuración ahora es:
MonitoringSpringAdvisor monitoringDataSpringAdvisor() {
new MonitoringSpringAdvisor(dataPointcut())
}
@Bean
Pointcut dataPointcut(){
AspectJExpressionPointcut pointcut = new AspectJExpressionPointcut()
pointcut.setExpression("execution(* com.makingdevs.service..**.*(..))")
pointcut
}
Aquí menciono que:
- Lo hice con Groovy, pero pues ya nada más agrégale el estilo Java
- El advisor me facilito el trabajo por que sólo le pase el pointcut
- En la configuración XML uso el Interceptor, y eso lo pongo en la config del advisor, pero en JavaConfig uso el Advisor directo
- Advisor = Advice + Pointcut
- Lo ocupe para varios paquetes
- La clase ganadora es AspectJExpressionPointcut https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/spr...
- neodevelop's blog
- Inicie sesión o regístrese para enviar comentarios
Comentarios recientes
hace 3 días 3 horas
hace 21 semanas 9 horas
hace 1 año 32 semanas
hace 1 año 36 semanas
hace 1 año 44 semanas
hace 2 años 1 día
hace 2 años 2 semanas
hace 2 años 4 semanas
hace 2 años 7 semanas
hace 2 años 7 semanas