Listener监听器

2021-04-27 15:44:59 浏览数 (1)

1. 监听器

监听器通过监听某种事物的变化,然后执行回调函数,去做出相应的处理。

2. ServletContextListener监听器

在web工程启动的时候,会创建ServletContext对象,在web工程停止的时候ServletContext对象会被销毁,而ServletContextListener监听器可以监听ServletContext对象的创建和销毁过程。

通俗来讲就是: 当ServletContextListener监听器监听到ServletContext对象被创建后,就会马上执行一个方法(可以用来做初始化),当ServletContextListener监听器监听到ServletContext对象被销毁后,又会马上执行另一个方法。

两个方法分别如下:

代码语言:javascript复制
// 当监听到ServletContext对象创建之后,会马上执行这个方法
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
    
}

// 当监听到ServletContext对象销毁之后,会马上执行这个方法
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
    
}

3. ServletContextListener监听器的使用方式

  1. 编写类实现 ServletContextListener
  2. 实现其中的两个回调方法
  3. 在web.xml中配置监听器

示例代码如下:

代码语言:javascript复制
public class ServletContextListenerImpl implements ServletContextListener {
	@Override
	public void contextInitialized(ServletContextEvent sce) {
		System.out.println("ServletContextListener监听器监听到 ServletContext 对象被创建了");
	}
	@Override
	public void contextDestroyed(ServletContextEvent sce) {
		System.out.println("ServletContextListener监听器监听到 ServletContext 对象被销毁了");
	}
}

web.xml中的配置:

代码语言:javascript复制
    <!-- 配置监听器 -->
<listener>
    <listener-class>com.qcln.listener.ServletContextListenerImpl</listener-class>
</listener>
  • 当启动web工程的时候,会看到控制台输出:ServletContextListener监听器监听到 ServletContext 对象被创建了
  • 当停止web工程的时候,会看到控制台输出:ServletContextListener监听器监听到 ServletContext 对象被销毁了

0 人点赞