Springboot下自定义监听器的使用

Servlet和Springboot的关系

spring boot 三大特性:

  • 组件自动装配:webMVC、webFlux、JDBC等(@EnableAutoConfiguration,@Configuration)
  • 嵌入式Web容器:Tomcat、Jetty以及undertow(简单说下我的理解,Spring的核心功能是IOC和DI。那么web部分,在springboot中肯定是做嵌入式的集成。Springboot中的web容器分为两类:1,web
    Servlet容器:Tomcat, Jetty, undertow。2,web Reactive容器:Netty, Web Server)
  • 生产准备特性:指标、健康检查、外部化部署等
    所以springboot的web容器是基于servelet实现的。

监听器的分类和作用

  1. HttpSessionListener(统计用户数量)
  2. ServletContextListener(加载初始化信息)
  3. ServletRequestListener(监控request内置对象)
  4. 自定义监听事件? extends ApplicationEvent和监听器? implements AppilicationListener

Springboot下自定义监听器的使用

1, 创建监听事件
2, 创建监听器
3, 发布事件
代码说明:
我想要监控内存中的两个对象,第一个为名为tom的猪,第二个为名为sec的猪。这两只猪在spring容器启动后,会交给spring管理,每当有用户请求controller层修改这两只猪的信息,都会通过监听器监听到,并将信息打印出来。

//PigFactory:将两只猪注入Spring容器中。
@Configuration
public class PigFactory {
   

    @Bean(name = "tom")
    public Pig getPigTom(){
   
        return new Pig("tom", "i am tom");
    }

    @Bean(name 

你可能感兴趣的:(SpringCloud)