Java listers的使用步骤:1、通过实现具体接口创建实现类(可实现多个监听器接口)。2、直接用@WebListener注解修饰实现类,配置实现类成为监听器;或者通过web.xml方式配置实现类成为监听器。

Java listers是监听器的意思,用于监听Web应用的内部事件的实现类。可以监听用户session的开始与结束,用户请求的到达等等,当事件发生时,会回调监听器的内部方法。
使用Listener步骤
通过实现具体接口创建实现类(可实现多个监听器接口)
配置实现类成为监听器,有两种配置方式:
立即学习“Java免费学习笔记(深入)”;
直接用@WebListener注解修饰实现类
通过web.xml方式配置,代码如下:
<listener>
<listener-class>com.zrgk.listener.MyListener</lisener-class>
</listener>常用Web事件监听器接口
1. ServletContextListener
该接口用于监听Web应用的启动与关闭
该接口的两个方法:
contextInitialized(ServletContextEvent event); // 启动web应用时调用 contextDestroyed(ServletContextEvent event); // 关闭web应用时调用
如何获得application对象:
ServletContext application = event.getServletContext();
示例:
@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);
}
}2. ServletContextAttributeListener
该接口用于监听ServletContext范围(application)内属性的改变。
该接口的两个方法:
attributeAdded(ServletContextAttributeEvent event);//当把一个属性存进application时触发 attributeRemoved(ServletContextAttributeEvent event);//当把一个属性从application删除时触发 attributeReplaced(ServletContextAttributeEvent event);//当替换application内的某个属性值时触发
如何获得application对象:
ServletContext application = event.getServletContext();
示例:
@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) {
// ...
}
}以上就是java listers怎么用的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号