SpringBoot外化配置源码解析:外化配置简介、参数处理( 三 )


ApplicationArguments 接口的使用非常简单 , 在我们使用参数值的 Bean 中直接注入ApplicationArguments 即可 , 然后调用其方法即可获得对应的参数值 。
注入 ApplicationArguments , 并提供打印所需参数信息的方法 , 代码如下 。
@Componentpublic class ArgsBean {@Resourceprivate ApplicationArguments arguments;public void printArgs() {System. out. println("#非选项参数数量:”+ arguments . getNonOptionArgs().size());System. out. println("#选项参数数量:”+ arguments . getOpt ionNames(). size());System. out. println("#非选项参数具体参数:");arguments . getNonOpt ionArgs(). forEach(System. out::println);System. out.println("#选项参数具体参数:");arguments . getOptionNames() . forEach(optionName -> {System. out . println("--"+ optionName + "=" + arguments . getOptionValue(optionName));});}在 main 方法中获得 ArgsBean 实例化对象 , 并调用其 printArgs 方法 ,代码如下 。
public static void main(String[] args) {SpringSpringApplication app = new SpringApplication(SpringL earnApplication.clasConfigurableApplicationContext context =app. run(args);ArgsBean bean = context. getBean(ArgsBean. class);bean. printArgs();}启动项目 , 控制台打印结果 , 代码如下 。
非选项参数数量: 1
#选项参数数量:2
#非选项参数具体参数:
nonaoptin 休会
#选项
参数:

  • --jdk . support=[1.7,1.8,1.8+]
  • - app . name=[ springBootLearn]
以上只是示例 , 在上面的介绍中也提到了 , 选项参数可通过@Value 直接注入 Bean 中使用 。
【SpringBoot外化配置源码解析:外化配置简介、参数处理】关于ApplicationArguments 其他方法的使用以此类推即可!
本文给大家讲解的内容是外化配置简介、ApplicationArguments参数处理
  1. 下篇文章给大家讲解的是命令参数的获取和配置文件的加载;
  2. 觉得文章不错的朋友可以转发此文关注小编;
  3. 感谢大家的支持!