Maison > Java > javaDidacticiel > java Explication détaillée de l'utilisation des instances HttpSessionListener et Filter dans Jetty9

java Explication détaillée de l'utilisation des instances HttpSessionListener et Filter dans Jetty9

怪我咯
Libérer: 2017-06-30 10:33:31
original
1511 Les gens l'ont consulté

Cet article présente principalement les informations pertinentes sur Java utilisant HttpSessionListener et Filter dans Jetty9. Les amis qui en ont besoin peuvent se référer à

java en utilisant HttpSessionListener dans Jetty9 et Filter.

HttpSessionListener

est appelé lorsque la session est créée ou détruite

Exemple de code :

class MyHttpSessionListener implements HttpSessionListener { 
  @Override 
  public void sessionCreated(HttpSessionEvent httpSessionEvent) { 
    System.out.println("sessionCreated"); 
  } 
 
  @Override 
  public void sessionDestroyed(HttpSessionEvent httpSessionEvent) { 
    System.out.println("sessionDestroyed"); 
  } 
}
Copier après la connexion

Méthode d'enregistrement :

ServletContextHandler.getSessionHandler().addEventListener(new MyHttpSessionListener());
Copier après la connexion

Remarque : Si la session n'est pas utilisée dans l'ensemble de la requête, elle ne sera pas générée et l'écouteur

<🎜 ne sera pas appelé. >

Le filtre

est appelé lorsque le client demande des données

Exemple de code :

class MyFilter implements Filter { 
 
  public MyFilter() { 
 
  } 
 
  @Override 
  public void init(FilterConfig filterConfig) throws ServletException { 
 
  } 
 
  @Override 
  public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { 
    if (servletRequest instanceof HttpServletRequest) { 
      HttpServletRequest httpRequest = (HttpServletRequest) servletRequest; 
 
      System.out.println(httpRequest.getServletPath()); 
    } 
    filterChain.doFilter(servletRequest, servletResponse); 
  } 
 
  @Override 
  public void destroy() { 
 
  } 
}
Copier après la connexion

Méthode d'enregistrement :

ServletContextHandler.addFilter(new FilterHolder(new MyFilter()), "/*", EnumSet.allOf(DispatcherType.class));
Copier après la connexion

Remarque : Si le chemin demandé est erroné, le filtre ne sera pas déclenché.

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