Ce sont des Intercepteurs dans Java EE?
Je suis en train de vider mon concept sur Intercepteurs en Java EE. J'ai lu spécification Java EE, mais je suis peu confus à ce sujet. Merci de me donner quelques liens utiles ou tutoriel qui pourrait effacer mon concept. Comment, Quand, Pourquoi utilisons-nous des intercepteurs?
- Jetez un oeil à la section sur les intercepteurs dans le tutoriel officiel, il contient également un prêt à exécuter l'exemple en montrant intercepteurs sur un stateless bean.
Vous devez vous connecter pour publier un commentaire.
Intercepteurs sont utilisés pour mettre en œuvre les sujets transversaux, comme l'exploitation forestière, de l'audit et de la sécurité, de la logique métier.
Dans Java EE 5, les Intercepteurs ont été autorisés uniquement sur les Ejb. Dans Java EE 6, Intercepteurs, est devenu une nouvelle spécification de son propre, résumé à un niveau plus élevé de sorte qu'il peut être plus générique appliqué à un ensemble plus large de spécifications de la plate-forme.
Ils intercepter les invocations et le cycle de vie des événements sur une cible associée classe. Fondamentalement, un intercepteur est une classe dont les méthodes sont invoquées lorsque les méthodes d'une classe cible sont invoquées, le cycle de vie des événements tels que les méthodes que créer/détruire le haricot se produire, ou un EJB délai d'attente de la méthode se produit. Le CDI spécification définit un type-safe mécanisme permettant d'associer des intercepteurs pour les haricots à l'aide de l'intercepteur liaisons.
Look pour un exemple de code en:
https://github.com/arun-gupta/javaee7-samples/tree/master/cdi/interceptors
Java EE 7 a également introduit un nouveau @Transactional annotations en Java Transaction API. Cela vous permet d'avoir container-managed des opérations à l'extérieur d'un EJB. Cette annotation est définie comme un intercepteur de liaison et mis en œuvre par le runtime Java EE. Un exemple de travail d' @Transactionnelle est à:
https://github.com/arun-gupta/javaee7-samples/tree/master/jta/transaction-scope
J'aime cette définition: les Intercepteurs sont des composants qui intercepter les appels aux méthodes de l'EJB. Ils peuvent être utilisés pour l'audit et journalisation et quand les Ejb sont accessibles.
Dans une autre situation, ils peuvent être utilisés dans une situation où nous avons besoin de vérifier si un client qui a l'autorité ou à l'autorisation d'exécuter une opération sur un objet particulier dans la base de données. Eh bien, c'est là que les Intercepteurs de venir dans maniable; ils peuvent vérifier si le client/utilisateur dispose que l'autorité en vérifiant si il/elle peut appeler cette méthode sur la base de données de l'objet ou de l'EJB.
Cependant, j'aurais toujours un oeil à la suite de l'article et suivants tutoriel pour avoir une idée de la façon dont ils sont utilisés dans une application Java EE paramètre/environnement.
Intercepteurs sont utilisés pour ajouter AOP capacité de la gestion des haricots.
Nous pouvons attacher de l'Intercepteur de notre classe à l'aide de @Interceptor annotation.
Chaque fois qu'une méthode dans notre classe est appelée, l'attaché de l'Intercepteur est intercepter que l'invocation de méthode et d'exécuter sa intercepteur de la méthode.
Ceci peut être réalisé à l'aide de @AroundInvoke annotation ( voir exemple ci-dessous ).
Nous permet d'intercepter les événements de cycle de vie d'une classe ( création d'objet,de détruire, etc) à l'aide de @AroundConstruct annotation.
Principale différence entre l'Intercepteur et Servlet Filtres est que Nous pouvons utiliser de l'Intercepteur à l'extérieur WebContext, mais les Filtres sont spécifiques à des applications Web.
Utilisations courantes des intercepteurs sont de journalisation, d'audit et de profilage.
Pour une introduction plus détaillée, vous pouvez lire cet article.
https://abhirockzz.wordpress.com/2015/01/03/java-ee-interceptors/