2011-01-27 14 views
6

¿Alguien podría proporcionar un fragmento de código de muestra que unir dos interfaces java usando spring-aop introduction (mixin)?Creando mixin con Spring AOP Introducciones

Estoy buscando la configuración de estilo de anotación AspectJ. Además, el caso de uso específico que tengo es unir algunos beans Java cada uno implementando sus propias interfaces. Entonces, en lugar de tener un delegado codificado, si pudiera escabullirme usando Spring XML, sería increíble.

Respuesta

5

Puede usar @DeclareParents o <aop:declare-parents> para obtener el comportamiento de mixin. Por ejemplo,

@DeclareParents(value="service.*", defaultImpl=AuditRecorderDefaultImpl.class) 
private AuditRecorder mixin; 

se mixin todas las clases del paquete service con la interfaz de AuditRecorder reenviar automáticamente cada método para AuditRecorderDefaultImpl.

Puedes ver ejemplos de esto en AspectJ en Action's downloadable sources. También puede ver una explicación detallada en Spring documentation.

1

Una demostración basada en primavera en acción edición del libro cuarto es here, la configuración es de estilo JavaConfig con @ComponentScan

+0

no podía entender cómo se llaman los métodos introducidos. El libro de Spring in Action 4 no es claro al respecto. Este ejemplo ayudó, gracias. – Razorfever

Cuestiones relacionadas