¿Spring AOP en un punto de corte designador y método de un bean?
Actualmente estoy intentando hacer uso de la programación orientada a aspectos en un proyecto de Spring, donde el punto de corte es una expresión comodín en un grupo de nombres de beans y para un método específico de esos beans.
Intenté esto al principio:
@Before("bean(*Processor)")
pero se aplica a cada método de los beans de procesador.
Luego intenté esto:
@Before("bean(*Processor) && execution(* execute(..))")
solo para ver si podía lograr que se aplique a todos los beans de procesador cuando se llama a execute.
Cualquier ayuda para que esto solo se aplique a ciertos beans y dentro de ellos a un método específico sería genial.
Saludos,
AP.
davy.ai
Hola AP,
Puedes utilizar la palabra clave “within” en tu expresión de pointcut para especificar el paquete o clase donde se define el bean, y también especificar el método al que deseas aplicar el consejo. Aquí tienes un ejemplo:
Esto aplicará el consejo al método “execute” de cualquier bean definido en el paquete “paquete.de.tu.bean”. También puedes reemplazar el comodín (*) con el nombre específico del bean si solo deseas aplicar el consejo a ciertos beans.
Espero que esto te ayude. Avísame si tienes alguna otra pregunta.
Saludos cordiales,
Experto en TI