Maison > Java > javaDidacticiel > Introduction à la méthode d'annotation de l'AOP au printemps

Introduction à la méthode d'annotation de l'AOP au printemps

零下一度
Libérer: 2017-06-30 10:42:06
original
1170 Les gens l'ont consulté

AOP (Aspect Oriented Programming) : Le terme professionnel pour AOP est « programmation orientée aspect ». Qu'est-ce que la programmation orientée aspect ? D'après ce que je comprends, améliorer les fonctions sans modifier le code source. Ceci sera d'ailleurs mentionné dans le contexte de la méthode

1. Construire un environnement pour la méthode d'annotation aop (importer les packages suivants)

2. Implémentation

Une fois l'environnement configuré, créez le projet.

1. Créez une classe d'interface (CustomerDao) et ajoutez deux méthodes

2. Une fois la classe d'interface créée, il est naturel de créer une nouvelle classe d'implémentation (CustomerDaoImpl) et implémenter les méthodes dans l'interface

 

3. Une fois le travail de base ci-dessus terminé, nous devons utiliser l'idée de springIOC et remettre la classe customerDaoImpl à la gestion du printemps

Créez un fichier XML nommé applicationContext.xml dans le répertoire src

Un bean est une paire de balises au printemps. Vous pouvez le comprendre comme un petit élément. , et l'identifiant est le nom que vous choisissez. Mais généralement, le nom de la classe est en minuscule avec la première lettre. Ce qui est ajouté à la classe est le chemin complet de la classe

Activer l'annotation automatique. /agent : Ce n'est que lorsque le proxy automatique est activé que nous écrivons ensuite. Les annotations ont de vraies applications

  

4. L'environnement et les classes de base ont été écrites, puis une classe de démonstration peut être créée Utilisé pour implémenter

 

Nous devons d'abord supprimer la classe CustomerDaoImpl qui existe dans le conteneur du printemps

Les codes '1' et '2', c'est ce qu'il fait.

Comme son nom l'indique dans '1', il faut lui indiquer où le récupérer, donc lui donner un chemin

La classe écrite est injectée dans le champ customerDao. Le nom en @. La ressource fait référence à la valeur id dans le bean précédent

L'étape suivante consiste à tester (besoin d'ajouter le code '3''4') et à écrire un run1() Ajoutez @Test à la méthode. , double-cliquez sur le nom de la méthode pour la sélectionner, faites un clic droit et sélectionnez Exécuter sur junit. Il s'agit d'un test unitaire, ce qui est très pratique.

Avec la préparation précédente, après avoir exécuté la méthode run1, les deux lignes de sortie dans la classe d'implémentation peuvent être affichées

3. aop Classe d'aspect

1. Créez la classe d'aspect MyAspectAnno.java (ajoutez un bean dans le fichier de configuration et continuez vers la gestion du printemps)

2. Ajoutez des exigences Méthodes fonctionnelles améliorées

Le code dans value est une expression. Le * après public fait référence à tout type de valeur de retour save() fait référence à l'endroit où améliorer ou quand il s'agit. où ajouter des fonctions, une fois ces codes écrits, cela signifie que la méthode sous l'annotation @After sera exécutée après l'exécution de save(), c'est-à-dire after() Ceci est amélioré

Mais lorsque nous écrivons plus de notifications (notifications surround, pré-notifications, etc.), nous devons ajouter du code d'expression à chaque fois. Le copier-coller est également très gênant. Ici, nous pouvons ajouter un point d'entrée et l'implémenter. comme suit :

Nous n'aurons besoin de le faire qu'à l'avenir, en ajoutant une notification environnante ci-dessous :

C'est une expression très longue, et cela facilite également maintenance future

L'image ci-dessus illustre clairement que nous avons mis en œuvre avec succès des améliorations fonctionnelles, en utilisant des idées aop et des annotations (les notifications que nous avons ajoutées sont exécutées après et autour du point d'entrée. (enregistrer()))

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal