欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

CommandLineRunner 和 ApplicationRunner 的区别

发布时间:2025/3/12 编程问答 34 豆豆
生活随笔 收集整理的这篇文章主要介绍了 CommandLineRunner 和 ApplicationRunner 的区别 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

CommandLineRunner 和 ApplicationRunner 概述

CommandLineRunner 和 ApplicationRunner 的作用类似, 都可以在 Spring 容器初始化之后执行某些操作。比较适用于某些复杂的 Bean 加载完成之后执行一些操作。例如 Feign 调用。

相同点

  • 都可以获取到启动时指定的外部参数。
  • 主逻辑方法名称都是 run 。
  • 在 run 方法内部抛出异常时, 应用都将无法正常启动。

不同点

  • run 方法的参数不一致, 一个是 String[] 数组, 一个是 ApplicationArguments 。

执行顺序

  • 在没有指定加载顺序 @Order 时或 @Order 值一致时, 先执行 ApplicationRunner。
  • 如果指定了加载顺序 @Order, 则按照 @Order 的顺序进行执行。

总结

以上是生活随笔为你收集整理的CommandLineRunner 和 ApplicationRunner 的区别的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。