SpringBoot-自定义监听器

Spring Boot提供了多种内置监听器,同时也支持自定义监听器。自定义监听器需要实现ApplicationListener接口,同时在Spring Boot应用程序中配置自定义监听器,以便在特定的应用程序事件发生时进行操作,比如读取配置文件、初始化数据等。自定义监听器可以帮助开发人员监控应用程序的运行状态,提高应用程序的可靠性和稳定性。同时,它也为开发人员提供了一个扩展Spring Boot应用程序的方式。

一、创建自定义监听器

创建自定监听器MyApplicationListener,继承ApplicationListener类。在onApplicationEvent方法里我们利用RedisUtil工具类往Redis里写入数据。

listener 001 1024x546 - SpringBoot-自定义监听器

MyApplicationListener.java代码:

package com.listener;

import com.util.RedisUtil;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;

@Component
public class MyApplicationListener implements ApplicationListener<ContextRefreshedEvent> {
    @Resource
    private RedisUtil redisUtil;

    @Override
    public void onApplicationEvent(ContextRefreshedEvent event) {
        // Spring Boot 应用启动后执行该方法
        System.out.println("Spring Boot 应用启动...");

        // 将数据存入 Redis 中
        redisUtil.set("key", "value", 300); //设置key为value,有效期为300秒
        System.out.println("将数据存入 Redis 中...");
    }
}

二、测试监听器

接下来,我们测试监听器是否在项目加载时自动运行。

1、启动项目,观察控制台,看到我们的log已经被打出了。

listener 002 - SpringBoot-自定义监听器

2、我们再去访问Reids服务,看内容是否已经被存入Redis,看到已经被存入。

listener 003 - SpringBoot-自定义监听器

到此,我们自定义监听器就配置完成了。

此条目发表在Java, JavaWeb分类目录,贴了, , , , 标签。将固定链接加入收藏夹。

发表回复