说一说SpringBoot的CommandLineRunner,SrpingBoot启动后可以自动执行的类
通常的项目都会有一些需要自动加载到内存或者是缓存中的一些静态数据内容,而这些内容通常都会安排在项目启动之后就进行自动的加载。这些内容可以可以放到项目启动的过程中进行加载,这样设计,比较省力,因为springboot提供的自动加载的类,可以自动的执行,减少了不少额外的工作,能够白嫖的东西自然就是好东西。下面就说一下如何使用,很简单,只要生成一个类,然后实现 CommandLineRunner接口就可以了。
执行的时机应该是项目应用启动之后,在日志输出的控制台上,可以看到是应用启动之后,然后开始加载这些自定义的工作内容。
1 2 3 4 5 6 7 8 9 10 11 12 | import org.springframework.boot.CommandLineRunner; import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; @Component @Order (value= 1 ) public class MyStartUpRunner1 implements CommandLineRunner { @Override public void run(String... args) throws Exception { System.out.println( "==============>>>>我的测试类, Order=1.啥都没有...<<<<==========" ); } } |
日志信息:
- Started AdminApplication in 7.843 seconds (JVM running for 8.765)
==============>>>>我的测试类, Order=1.啥都没有...<<<<==========
============ 服务器启动中....,开始加载缓存数据 ============
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
2020-04-21 什么是m1,m2,m3