Spring|Spring boot CommandLineRunner启动任务传参实例详解
目录
- 前言
- 命令行传参
- IntelliJ IDEA传参
- 测试
- 总结
前言 在《Spring boot 通过CommandLineRunner 在启动完成后执行任务》这篇文章中我们介绍了创建CommandLineRunner任务,在Spring boot启动后执行一些任务。
有人可能有以为,这run(String... args)方法中的args参数是什么?
@Component@Order(value = https://www.it610.com/article/1) // 指定其执行顺序,值越小优先级越高public class MyRunner1 implements CommandLineRunner {@Overridepublic void run(String... args) throws Exception {System.out.println("MyRunner1"); }}
String... args是应用启动的时候可以传进来的参数,有两种方式可以传参
一种是命令行的方式传参,所以为什么这个接口叫CommandLineRunner
另一种方法是通过IntelliJ IDEA配置参数
下面分别说明
命令行传参 首先将应用打成jar包,然后运行如下命令行,我这里传入三个参数
java -jar MyProject.jar 野猿新一 野猿新二 野猿新三
IntelliJ IDEA传参 如果是在开发过程中想通过IntelliJ IDEA直接运行项目,不想打成jar包,又要传入参数,可以配置项目运行的环境
1.点击Edit Configurations...打开项目运行配置对话框
文章图片
2展开Environment,在Program arguments项中填入项目运行的参数,点击OK按钮确定
文章图片
测试 我们将上面的实例稍微修改下,把参数args打印出来
@Component@Order(value = https://www.it610.com/article/1) // 指定其执行顺序,值越小优先级越高public class MyRunner1 implements CommandLineRunner {@Overridepublic void run(String... args) throws Exception {System.out.println("MyRunner1:" + Arrays.toString(args)); }}
采用以上命令行的方式或者IntelliJ IDEA配置参数的方式运行结果一样,如下
2020-08-21 16:36:04.453 custom-logbackINFO 16244 --- [main] com.yeyuanxinyi.MyApplication: Started MyApplication in 10.724 seconds (JVM running for 13.727)实际使用的时候可以取到传入的参数然后做一些操作
MyRunner1:[野猿新一, 野猿新二, 野猿新三]
总结 【Spring|Spring boot CommandLineRunner启动任务传参实例详解】到此这篇关于Spring boot CommandLineRunner启动任务传参的文章就介绍到这了,更多相关Springboot CommandLineRunner启动任务传参内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- 毕业设计|SpringMVC+Vue项目运动品交易商城
- 课程设计|SpringMVC+Vue项目旅游资源网站
- #私藏项目实操分享#SpringCloud Alibaba Sentinel使用及规则配置
- Spring认证中国教育管理中心-Apache Geode 的 Spring 数据教程十七
- #yyds干货盘点#Spring源码三千问AdviceAdvisorAdvised都是什么接口()
- CGLIB动态代理探索(ASM,Spring)#yyds干货盘点#
- spring boot 测试插件使用及result风格实例1&打包启动.
- SpringBoot整合SpringSecurity
- #私藏项目实操分享# Spring专题「开发实战」Spring Security与JWT实现权限管控以及登录认证指南
- SpringBoot前后端分离解决跨域问题的3种解决方案总结