一、方式一,使用ApplicationListener<E extends ApplicationEvent>监听ContextRefreshedEvent事件
/** * @author zhangboqing * @date 2019-11-03 */ @Component public class MyApplicationListener implements ApplicationListener<ContextRefreshedEvent> { @Autowired private MyService myService; @Override public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) { System.out.println(">>>>>>>>>>>>>> ApplicationListener:" + myService.sayHello()); } }
二、方式二,使用SmartInitializingSingleton
/** * @author zhangboqing * @date 2019-11-03 */ @Component public class MySmartInitializingSingleton implements SmartInitializingSingleton { @Autowired private MyService myService; @Override public void afterSingletonsInstantiated() { System.out.println(">>>>>>>>>>>>>> SmartInitializingSingleton:" + myService.sayHello()); } }
三、方式三,使用SmartLifecycle
/** * @author zhangboqing * @date 2019-11-03 */ @Component public class MySmartLifecycle implements SmartLifecycle { @Autowired private MyService myService; @Override public void start() { System.out.println(">>>>>>>>>>>>>> SmartLifecycle:" + myService.sayHello()); } @Override public boolean isAutoStartup() { return true; } @Override public void stop(Runnable callback) { } @Override public void stop() { } @Override public boolean isRunning() { return false; } @Override public int getPhase() { return 0; } }
原文地址:https://www.cnblogs.com/756623607-zhang/p/11789199.html
时间: 2024-10-25 05:55:35