Question

Il existe des filtres et la fonctionnalité dans Servlet Listeners. Je veux savoir la différence exacte entre le filtre et Listener.

Était-ce utile?

La solution

Filtre Servlet est utilisé pour la surveillance de la demande et de la réponse du client au servlet, ou de modifier la demande et la réponse, ou d'une vérification et le journal.

Servlet Listener est utilisé pour écouter les événements dans un conteneurs Web, par exemple lorsque vous créez une session, ou placez un attribut dans une session ou si vous passiver et activer dans un autre récipient, pour vous abonner à ces événements, vous pouvez configurer l'auditeur en web.xml, par exemple HttpSessionListener.

Autres conseils

Les filtres sont utilisés pour traiter les demandes de pré et post. Regardez le javax.servlet.Filter dans votre tomcat / jboss / javadoc autre récipient.

Où que les auditeurs sont comme déclencheurs qui peuvent être associés aux événements dans votre serveur d'applications (Utilisons ici le récipient à long terme). Avec les auditeurs, vous pouvez suivre au niveau de l'application, au niveau de la session, les changements du cycle de vie, attribut change etc. Les interfaces mises en œuvre sont interface javax.servlet.Listener.

D'après les réponses « @fnt ci-dessous, je vais essayer de clarifier un peu plus. Les auditeurs sont ciblés pour les changements du cycle de vie, sans avoir à une demande client à venir. Donc, pour une demande de client, il pourrait y avoir beaucoup plus d'événements du cycle de vie peuvent se produire avant que la demande soit éliminée. Exemple: Vous voulez enregistrer toutes les sessions délai d'attente. S'il vous plaît noter que SesionTimeout est un événement du cycle de vie, qui peut se produire sans avoir à l'utilisateur de faire quoi que ce soit. Pour un tel scénario, un auditeur sera approprié.

A la question de l'exploitation forestière lorsqu'une demande arrive. Il n'y a pas de correspondance directe d'une nouvelle demande à un événement d'écoute équivalent (lecture événement du cycle de vie). Et par conséquent, pour chaque requête entrante si vous voulez vous connecter quelque chose, filtre à mon avis, est la bonne chose à utiliser.

Ce matériel d'Oracle devrait être en mesure de préciser un peu plus Filtres et Listeners

HTH

Filtre est comme un filtre à eau, où entrants (demande) et sortants (valeurs de réponse) seront filtrés.

Listener est comme l'écoute (déclenchement) -. Chaque fois que nécessaire, je vais exécuté

Une différence importante est souvent négligé: alors que les auditeurs se déclenchent pour une demande physique, filtres fonctionnent avec des dépêches de conteneur de servlet. Pour un appel d'auditeur il peut y avoir plusieurs filtres / invocations de servlet.

Filtres

Mapping filtres types dispatcher . Le lien est un peu daté - il ne comprend pas le type de répartiteur de Async Servlet 3.0. On peut également spécifier le type de répartiteur avec l'annotation @WebFilter:

import javax.servlet.DispatcherType;
import javax.servlet.annotation.WebFilter;

@WebFilter(servletNames = { "My Servlet" },
    dispatcherTypes = { DispatcherType.REQUEST, DispatcherType.FORWARD })

Texte de Java EE 6

Filtre

Filter est un objet qui transforment la demande et la réponse (en-tête ainsi que le contenu).

Listeners

Vous pouvez surveiller et réagir aux événements du cycle de vie d'une servlet en définissant des objets d'écoute dont les méthodes s'invoqué lorsque des événements du cycle de vie se produisent.

Après avoir lu toutes les réponses et les blogs ce que je suis

  

Filtre

     

Un filtre est un objet qui intercepte les requêtes dynamiquement et   Réponses à transformer ou utiliser les informations contenues dans le   requêtes ou des réponses.

     

Filtres en général ne créent eux-mêmes réponses, mais   fournir des fonctions universelles qui peuvent être « attachés » à tout type de   Page servlet ou JSP.

     

Le filtre est exécuté avant vue de rendu, mais après le contrôleur rendu   réponse.

     

Un filtre est utilisé dans la couche de voile uniquement comme il est défini dans web.xml.

     

Les filtres sont plus appropriés lors du traitement de votre demande / réponse en   Système de boîte noire. Ils travailleront indépendamment de la façon dont le servlet est   mis en œuvre.

     

Les filtres sont utilisés pour effectuer des tâches telles que le filtrage connexion   l'authentification, la vérification des demandes entrantes des pages Web,   conversion, l'enregistrement, la compression, le chiffrement et le déchiffrement, l'entrée   validation etc.

     

Un filtre Servlet est utilisé dans la couche Web uniquement, vous ne pouvez pas l'utiliser   en dehors d'un contexte web.

Pour plus de détails sur le filtre http://array151.com/blog/servlet-filter/

  

Listener

     

Servlet Listener est utilisé pour écouter des événements dans un conteneur Web,   par exemple lorsque vous créez une session ou placez un attribut dans une session   ou si vous activez passiver et dans un autre récipient, de souscrire   ces événements, vous pouvez configurer l'auditeur dans web.xml, par exemple,   HttpSessionListener.

     

Les auditeurs se déclenche pour une demande physique qui peut être   attaché à des événements dans votre serveur d'applications .Avec auditeurs, vous pouvez suivre   Niveau de l'application, au niveau de la session, les changements du cycle de vie, attribut   changements, etc.

     

Vous pouvez surveiller et réagir aux événements dans le cycle de vie d'une servlet par   la définition des objets d'écoute dont les méthodes s'invoquées lors du cycle de vie   les événements se produisent.

Pour plus de détails: http://array151.com/blog/servlet-listener/

et est ici la différence http: // array151. com / blog / différence entre servlet-filtre et servlet-auditeur /

Alors que vous pouvez modifier l'objet de l'événement en cours dans un écouteur, vous ne peut pas stopper l'exécution du gestionnaire d'événement en cours à un auditeur. Vous ne pouvez pas non effacer la file d'attente à partir d'un auditeur. outre les différences imposées aux capacités, elles sont également destinées à fins différentes. Les auditeurs ont tendance à se concentrer sur interacton entre la gestionnaire d'événements et le modèle, tandis que les filtres ont tendance à se concentrer sur l'interaction entre le gestionnaire d'événements et le contrôleur.

Source: web

Vous pouvez facilement avoir une idée approximative avec le sens anglo-saxon de ces deux. Le filtre est là pour filtrer le contenu / ressource venant / sortir d'un Servlet. En revanche, Listener est là, de faire des choses connexes quand quelque chose arrive à l'application Web (écoute).

Filtre. Filtre simplement Filtrage de la réponse et demande provenant des clients au servlet

Listener: est comme un déclencheur lorsqu'un déclencheur est-il produit l'action.

En bref,

Le filtre est pour le Servlet, interceptant les demandes et les réponses.

Listener est pour l'application Web, faire des tâches importantes sur les événements dans le contexte de niveau, au niveau des sessions etc.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top