简单实用SpringApplicationListener

编写测试事件

编写对应的监听器

package com.itdfq.springlistener.event;

import org.springframework.context.ApplicationListener;
import org.springframework.stereotype.Component;

/**
 * @Author: GodChin
 * @Date: 2021/8/12 9:56
 * @Description:
 */
@Component
public class TestEventHandler implements ApplicationListener<TestEvent> {
          
   
    @Override
    public void onApplicationEvent(TestEvent testEvent) {
          
   
        System.out.println("处理器执行了");
        System.out.println(testEvent);
        System.out.println(testEvent.getName());
        System.out.println(testEvent.getSource());
    }
}

测试

package com.itdfq.springlistener;

import com.itdfq.springlistener.event.TestEvent;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.ApplicationEventPublisher;

import javax.annotation.Resource;

@SpringBootTest
class SpringListenerApplicationTests {
          
   

//使用spring自带的事件发布
    @Resource
    private ApplicationEventPublisher eventPublisher;

    @Test
    void contextLoads() {
          
   
        eventPublisher.publishEvent(new TestEvent(123,"李白"));
    }

}

结果

经验分享 程序员 微信小程序 职场和发展