Maison  >  Article  >  Java  >  Comment implémenter des annotations personnalisées en Java

Comment implémenter des annotations personnalisées en Java

coldplay.xixi
coldplay.xixioriginal
2020-08-20 11:53:495382parcourir

Comment implémenter des annotations personnalisées en Java : créez d'abord un nouveau fichier Java et personnalisez une annotation ; puis utilisez des méta-annotations pour définir divers éléments et enfin définissez la logique métier de l'annotation.

Comment implémenter des annotations personnalisées en Java

Comment implémenter des annotations personnalisées en Java :

1 Personnalisez une annotation (MyValidate) et utilisez l'élément. L'annotation définit diverses utilisations

Comment implémenter des annotations personnalisées en Java

2. Définir la logique métier de l'annotation Un seul attribut de l'annotation est implémenté ici : isNotNull()

<.> Comment implémenter des annotations personnalisées en Java

Ensuite, vous pouvez l'utiliser avec bonheur

Comment implémenter des annotations personnalisées en Java

Dans les projets réels, il est implémenté via des intercepteurs ou des aspects :

1. une interface, nommée BaseCheck. Il existe une méthode de vérification abstraite dans BaseCheck et la valeur de retour de la méthode de vérification est booléenne.

2. Définissez des annotations de vérification, telles que : @NotNull, @Length.

3. Selon les annotations ci-dessus, définissez les classes de vérification correspondantes, telles que : NotNullCheck, LengthCheck.

4. NotNullCheck et lengthCheck doivent tous deux implémenter la méthode de vérification de BaseCheck. Vous devez écrire le processus de vérification dans la méthode de vérification.

5. Définissez un conteneur et placez-y les objets NotNullCheck et lengthcheck au démarrage du projet.

Si vous utilisez spring, ajoutez directement une annotation @Component sur NotNullCheck et lengthcheck . obtenir le même effet.

6. Définir un intercepteur ou un aspect.

7. Dans cet intercepteur ou aspect, récupérez les paramètres de la requête, qui est l'objet utilisateur.

8. Par réflexion, obtenez la classe correspondant à l'objet utilisateur Le nom de la classe doit être User.

9. Parcourez tous les champs dans l'utilisateur et vérifiez si chaque champ contient des annotations.

10. Parcourez toutes les annotations sur le terrain.

11. Si vous trouvez une annotation @NotNull, recherchez la classe de contrôle correspondante,

BaseCheck baseCheck = containers.get("NotNullCheck")

ou BaseCheck baseCheck = (BaseCheck) SpringUtl.getBean("NotNullCheck")

12. S'il est trouvé, c'est-à-dire que baseCheck n'est pas vide, obtenez la valeur réelle de ce champ par réflexion, utilisez cette valeur comme paramètre et appelez baseCheck. . méthode de vérification

13. Si baseCheck.check renvoie false, il signalera une erreur, il continuera jusqu'à ce que tous les champs et toutes les annotations aient été parcourus

. Recommandations d'apprentissage associées :

Tutoriel de base Java

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!

Déclaration:
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