Maison > Java > javaDidacticiel > le corps du texte

Comment utiliser les listeurs Java

(*-*)浩
Libérer: 2020-09-17 16:52:05
original
3019 Les gens l'ont consulté

Étapes d'utilisation des listeurs Java : 1. Créez une classe d'implémentation en implémentant une interface spécifique (peut implémenter plusieurs interfaces d'écoute). 2. Utilisez directement l'annotation @WebListener pour modifier la classe d'implémentation et configurer la classe d'implémentation pour qu'elle devienne un écouteur ou configurez la classe d'implémentation pour qu'elle devienne un écouteur via web.xml.

Comment utiliser les listeurs Java

Les listers Java désignent des auditeurs, des classes d'implémentation utilisées pour surveiller les événements internes des applications Web. Vous pouvez surveiller le début et la fin des sessions utilisateurs, l'arrivée des requêtes des utilisateurs, etc. Lorsqu'un événement survient, la méthode interne du listener sera rappelée.

Étapes pour utiliser Listener

Créer une classe d'implémentation en implémentant une interface spécifique (peut implémenter plusieurs interfaces d'écoute)

Configurer la classe d'implémentation pour qu'elle devienne un écouteur, Il existe deux méthodes de configuration :

Utiliser directement l'annotation @WebListener pour modifier la classe d'implémentation

Configurer via web.xml, le code est le suivant :

<listener>
    <listener-class>com.zrgk.listener.MyListener</lisener-class>
</listener>
Copier après la connexion

Surveillance des événements Web couramment utilisée ServletContextListener

1 ServletContextListener

Cette interface est utilisée pour surveiller le démarrage et l'arrêt des applications Web

<.>Deux méthodes de cette interface :

contextInitialized(ServletContextEvent event); // 启动web应用时调用
contextDestroyed(ServletContextEvent event); // 关闭web应用时调用
Copier après la connexion

Comment obtenir l'objet application :

ServletContext application = event.getServletContext();
Copier après la connexion
Copier après la connexion

Exemple :

@WebListener
public class MyServetContextListener implements ServletContextListener{

    //web应用关闭时调用该方法
    @Override
    public void contextDestroyed(ServletContextEvent event) {
        ServletContext application = event.getServletContext();
        String userName = application.getInitParameter("userName"); 
        System.out.println("关闭web应用的用户名字为:"+userName);
    }

    //web应用启动时调用该方法
    @Override
    public void contextInitialized(ServletContextEvent event) {
        ServletContext application = event.getServletContext();
        String userName = application.getInitParameter("userName");     
        System.out.println("启动web应用的用户名字为:"+userName);
    }

}
Copier après la connexion

2 . ServletContextAttributeListener

Cette interface est utilisée pour écouter les modifications des attributs dans la portée ServletContext (application).

Deux méthodes de cette interface :

attributeAdded(ServletContextAttributeEvent event);//当把一个属性存进application时触发
attributeRemoved(ServletContextAttributeEvent event);//当把一个属性从application删除时触发
attributeReplaced(ServletContextAttributeEvent event);//当替换application内的某个属性值时触发
Copier après la connexion
Comment obtenir l'objet application :

ServletContext application = event.getServletContext();
Copier après la connexion
Copier après la connexion

Exemple :

@WebListener
public class MyServletContextAttributeListener implements ServletContextAttributeListener{

    //向application范围内添加一个属性时触发
    @Override
    public void attributeAdded(ServletContextAttributeEvent event) {
        String name = event.getName();//向application范围添加的属性名
        Object val = event.getValue();      //向application添加的属性对应的属性值
        System.out.println("向application范围内添加了属性名为:"+name+",属性值为:"+val+"的属性");

    }

    //删除属性时触发
    @Override
    public void attributeRemoved(ServletContextAttributeEvent event) {
        // ...      
    }

    //替换属性值时触发
    @Override
    public void attributeReplaced(ServletContextAttributeEvent event) {
        // ...      
    }

}
Copier après la connexion

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