Um dos principais componentes do Spring Framework é a programação orientada a Aspectos (AOP) framework. A programação orientada a aspectos implica quebrar a lógica do programa em partes distintas chamadas preocupações. As funções que abrangem vários pontos de uma aplicação são chamadas preocupações transversais e essas preocupações transversais são conceitualmente separadas da lógica de negócios da aplicação., Existem vários bons exemplos comuns de aspectos como a exploração madeireira, auditoria, transações declarativas, segurança, caching, etc.
a unidade chave da modularidade em OOP é a classe, enquanto em AOP a unidade de modularidade é o aspecto. A injecção de dependência ajuda-o a dissociar os objectos da sua aplicação uns dos outros e AOP ajuda-o a dissociar as preocupações transversais dos objectos que afectam. AOP é como gatilhos em linguagens de programação como Perl,. net, Java e outros.
Spring AOP module provides interceptors to intercept an application., Por exemplo, quando um método é executado, você pode adicionar funcionalidade extra antes ou depois da execução do método.
AOP Terminologies
Before we start working with AOP, let us become familiar with the AOP concepts and terminology. Estes termos não são específicos da primavera, mas estão relacionados com a AOP.
Sr. Não | Termos & Descrição |
---|---|
1 |
Aspecto Este é um módulo que possui um conjunto de APIs, proporcionando a necessidades de corte., Por exemplo, um módulo de registro seria chamado de aspecto AOP para registro. Uma aplicação pode ter qualquer número de aspectos dependendo do requisito. |
2 | |
3 | |
4 | |
5 | |
6 |
Tipos de Aconselhamento
Primavera aspectos pode trabalhar com cinco tipos de conselhos mencionados como segue:
Sr.,Não | Consultoria & Descrição |
---|---|
1 |
antes de Executar conselhos antes da execução do método. |
2 | |
3 | |
4 | |
5 |
Custom Aspects Implementation
Spring supports the @AspectJ annotation style approach and the schema-based approach to implement custom aspects. Estas duas abordagens foram explicadas em pormenor nas secções seguintes.
Sr.,No | Approach & Description |
---|---|
1 | XML Schema based
Aspects are implemented using the regular classes along with XML based configuration. |
2 | @AspectJ based
@AspectJ refers to a style of declaring aspects as regular Java classes annotated with Java 5 annotations. |