如何在Spring Boot启动时执行特定代码?

作者: Java面试题解惑-老杨分类: 野生技能协会 发布时间: 2021-11-08 21:51:11 浏览:7188 次

如何在Spring Boot启动时执行特定代码?

我是蛋炒饭6:
实现方式有很多,除此之外,在Bean生命周期中还有很多环节可以实现,比如initMethod、@PostConstruct、afterPropertiesSet…根据场景自己去选择

佛系de看官:
虽然只玩过一点点微服务,但是java这块已经系统学过了,很喜欢这种零散的知识,老哥可以多出点java基础一些常见面试题嘛,最近换工作,得看看基础的东西

【回复】可以可以,我加油更新哈~
小泽学Jvav:
在application context注册一个bean实现initialingbean这个接口,重写afterporpertiesset方法可以吗[妙啊]

【回复】可以,我们多实例竞争分布式锁后,初始化缓存就是这么玩儿的。效果类似但时机不一样,initializingBean是在bean初始化时的回调,此时bean初始化还没全部完成,时机比较早。而Runner和Listener时机相对靠后。
啊哒XD:
总结一下就是 实现 ApplicationRunner 接口 和 CommandLineRunner 接口的两个 run方法都可以在启动时执行一定的方法

擎天柱一号:
老师再举个例子更好了,只说特定的方法有点笼统啊

【回复】比如SpringBoot启动后进行缓存预热,把一些数据随着项目启动就加载到缓存中。
【回复】回复 @Java面试题解惑-老杨 :记得有个注解可以在springboot启动后执行,也可以
-___ZERO___-:
这个也可以用来集成一些其他的三方非Spring组件

知识分享官 程序员 SPRING SSM SPRINGBOOT 打卡挑战

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!