Spring透过ApplicationListener来触发contextrefreshedevent事件
2023-09-14 08:57:25 时间
本文转自:https://www.cnblogs.com/doudouxiaoye/p/5962390.html
Spring通过ApplicationListener接口来触发contextrefreshedevent事件
在开发时有时候需要在整个应用开始运行时执行一些特定代码,比如初始化环境,准备测试数据、加载一些数据到内存等等。
在Spring中可以通过ApplicationListener来实现相关的功能,加载完成后触发contextrefreshedevent事件(上下文件刷新事件)
例如:定时任务
上述中解决了一个问题:
会存在一个问题,在web 项目中(spring mvc),系统会存在两个容器,一个是root application context ,另一个就是我们自己的 projectName-servlet context(作为root application context的子容器)。
这种情况下,就会造成onApplicationEvent方法被执行两次。为了避免上面提到的问题,可以只在root application context初始化完成后调用逻辑代码,其他的容器的初始化完成,则不做任何处理,修改后代码
相关文章
- spring学习笔记(16)趣谈spring 事件机制[2]:多监听器流水线式顺序处理
- 【Spring Boot】Spring Boot之整合RabbitMQ并实现消息的发送和接收
- 【Spring Cloud】Spring Cloud之Spring Cloud Sleuth,分布式服务跟踪(1)
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring: spittr实例 构建简单的web应用
- spring: 使用Spring提供的JDBC模板(使用profiles选择数据源/使用基于JDBC驱动的数据源)
- spring boot: @Retention注解 @Documented 注解 @Inherited 注解
- Spring Boot Serverless 实战系列 | 性能调优
- Spring中使用RedisTemplate操作Redis(spring-data-redis)
- spring cloud 学习笔记 客户端(本地)均衡负载(三)
- Spring异常解决 java.lang.NullPointerException,配置spring管理hibernate时出错
- [Java Spring Data] @JoinTable, @JoinColumn, joinColumns and inverseJoinColumns
- Spring注解 系列之Spring常用注解总结
- Spring复杂的BeanFactory继承体系该如何理解?---中下
- Spring MVC注解Controller源码流程解析---请求匹配中的容错处理
- Spring框架里注解@Autowired的工作原理
- 【Spring源码学习】spring IOC容器管理
- Spring Boot 之spring.factories
- 009-Spring Boot 事件监听、监听器配置与方式、spring、Spring boot内置事件
- Spring MVC内部资源视图解析器
- 如何选择Spring cloud和 Spring Boot对应的版本
- 深入理解Spring的事件通知机制
- java经典面试题之Spring Boot 面试题汇总附答案(史上最全持续更新)
- 【java】Spring Boot --spring boot项目整合xxl-job