加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

【SpringBoot】05.SpringBoot整合Listener的两种方式

发布时间:2020-12-15 07:08:44 所属栏目:Java 来源:网络整理
导读:SpringBoot整合Listener的两种方式: 1.通过注解扫描完成Listener组件的注册 创建一个类实现 ServletContextListener (具体实现哪个Listener根据情况来判断) 在类上加入注解 @WebListener 重写 contextInitialized() 与 contextDestroyed() 方法 编写启动类

SpringBoot整合Listener的两种方式:

1.通过注解扫描完成Listener组件的注册

  1. 创建一个类实现ServletContextListener (具体实现哪个Listener根据情况来判断)
  2. 在类上加入注解@WebListener
  3. 重写contextInitialized()contextDestroyed()方法
  4. 编写启动类
  5. 增加注解@ServletComponentScan
@WebListener
public class FirstListener implements ServletContextListener {
	@Override
	public void contextDestroyed(ServletContextEvent sce) {
	}
	@Override
	public void contextInitialized(ServletContextEvent sce) {
		System.out.println("Listener...init....");
	}
}
@SpringBootApplication
@ServletComponentScan
public class App {
	public static void main(String[] args) {
		SpringApplication.run(App.class,args);
	}
}

2.通过方法完成Listener组件注册

  1. 创建一个类实现ServletContextListener (具体实现哪个Listener根据情况来判断)
  2. 编写启动类
  3. 新增方法,方法类型为ServletListenerRegistrationBean<需要注册的Listener的类>
  4. 实例化ServletListenerRegistrationBean对象,构造时传入"需要注册的Listener的类"对象
  5. 返回该对象
  6. 该方法上加注解@Bean
@SpringBootApplication
public class App2 {
	public static void main(String[] args) {
		SpringApplication.run(App2.class,args);
	}
	
	/**
	   * 用于注册Listener
	 */
	@Bean
	public ServletListenerRegistrationBean<SecondListener> getServletListenerRegistrationBean(){
		ServletListenerRegistrationBean<SecondListener> srb = new ServletListenerRegistrationBean<SecondListener>(new SecondListener());
		return srb;
	}
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读