Spring Boot中ApplicationRunner与CommandLineRunner

2023-11-16

在实际的开发场景中,经常需要在运行环境之前执行一些类似于读取配置文件、数据库连接操作等。Spring Boot提供了ApplicationRunner和CommandLineRunner来帮助我们实现这些需求。
时机:他们执行的时机是为容器启动完成的时候;
实现:都需要去实现这两个接口的run方法;
区别:ApplicationRunner中的run方法参数为ApplicationArguments,而CommandLineRunner接口中run方法的参数为String数组;
示例:

ApplicationRunner

package com.zm.lesson1;

import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;

@Component
public class AppRunner implements ApplicationRunner {

    @Override
    public void run(ApplicationArguments args) throws Exception {

        System.out.println("测试ApplicationRunner接口,参数:" + args);
    }
}

CommandLineRunner

package com.zm.lesson1;

import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;

import java.util.Arrays;

@Component
public class CommandRunner implements CommandLineRunner {

    @Override
    public void run(String... strings) throws Exception {

        System.out.println("测试ApplicationRunner接口,参数:" + Arrays.toString(strings));
    }
}

控制台输出

Application与CommandLineRunner输出

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Boot中ApplicationRunner与CommandLineRunner 的相关文章

  • 服务器怎么和网站接入,网站服务器的带宽怎么接入呢?

    zzzooo 当下许多企业为了将事务上云 开端租借效劳器建立网站 可是因为各个运营商机房种类都不相同 带宽线路也有区别 许多用户不清楚网站效劳器的带宽要怎样接入 今天小编就和我们聊一聊当下商场几种比较抢手的几种带宽接入方式 一 BGP多线带
  • 使用请求队列实验

    关于块设备架构就讲解这些 接下来我们使用开发板上的 RAM 模拟一段块设备 也就是ramdisk 然后编写块设备驱动 首先是传统的使用请求队列的时候 也就是针对机械硬盘的时候如何编写驱动 先分段分析一下驱动代码 1 重要的数据结构及宏定义

随机推荐

  • 简单好用的小控件------自定义checkbox

    1 首先在drawable文件夹中添加drawable文件checkbox style xml html view plain copy
  • Centos7关闭防火墙时遇到的错误Failed to start firewalld.service: Unit not found. Unit firewalld.service could no

    Centos7关闭防火墙 今天在centos上想要关闭防火墙 查了一些博客 执行命令 systemctl status firewalld service 时报错Unit firewalld service could not be fou
  • 常见缺少msvcp140.dll问题及解决方法,分享多种方法帮你解决

    在日常使用电脑的过程中 我们可能会遇到各种问题 比如电脑提示msvcp140 dll文件丢失 这个问题通常是由于某些程序或游戏需要这个dll文件来正常运行 但是由于某种原因 这个文件被误删或者损坏了 那么 如何解决这个问题呢 本文将为您提供
  • 队列算法的原理和实现,及其企业级应用

    目录 一 队列的原理 二 队列的算法实现 队列的算法实现1 使用数组 队列的算法实现2 使用链表 三 队列的企业级应用案例 一 线程池中的任务队列 二 循环队列 三 优先队列 四 动态顺序队列 五 高并发 WEB 服务器队列的应用 一 队列
  • 华为硬件工程师社招机考题库_华为硬件工程师笔试题

    有效地扩展放大器的通频带 改善放大器的线性和非线性失真 6 放大电路的频率补偿的目的是什么 有哪些方法 仕兰微电子 频率补偿目的就是减小时钟和相位差 使输入输出频率同步 很多放大电路里都会用到锁相环频率补偿电路 7 频率响应 如 怎么才算是
  • python中数据的初始化

    1 普通数据的初始化 在函数以外的地方初始化数据 若数据是不同名 但初始值一样 则可以这样写 a b c d 0 2 函数参数区域的数据初始化 可以在形参的范围内去初始化各个不同名字的参数 def f value 0 reverse Fal
  • 安防音视频(rtsp,onvif,gb28181)的HTML5(H5)解决方案(直播,回放,PTZ)

    背景 单位需要在基于H5的管理软件中接入安防音视频 直接在H5上实现不容易 只能选择第三方开发包 本文对klporxy使用做个简单记录 开发包的获取 开发包为共享软件 2路视频是免费的 需要的可以点击下载 或者邮件联系5614280 qq
  • Ubuntu 如何切换到root账户

    root账号问题ubuntu默认禁用了root账号 所以当年试图使用su root命令切换到root用户时 尽管你已经输入了正确的密码 终端依旧会提示你密码错误 你需要执行以下命令解除root账号的锁定1 打开终端 Dash搜索termin
  • 面对AI,要(能)当“杜兰特”吗?

    大家好 我是老三 先说一下这篇文章没什么干货 就是一篇随笔 今天闲来无事 在掘金上刷到一篇文章 GPT 4都来了 我们还需要刷算法题和背八股文吗 https juejin cn post 7211120847787098171 文章还行 但
  • 为什么技术开发者应该读一读《浪潮之巅》

    上周已经阅读完吴军老师的著作 浪潮之巅 第二版 迄今仍然激情澎湃 这本著作以平和直白的笔触介绍了硅谷IT企业们的发展史 看像微软 谷歌 苹果等优秀的IT企业们 从白手起家 到发展壮大成为今天的巨头 再看太阳微系统公司 雅虎公司从创造辉煌 到
  • 关于Eclipse如何改成中文的方法

    从官网下载的Eclipse是英文版的 对于我这种新手来说要上手比较困难 所以需要改成中文版的 咱们首先进入Eclipse语言包的网址 如下图所示进行操作 如图所示 找到对应的版本进入 找到标题为Language Chinese Simpli
  • 常用的正则表达式集锦

    常用的正则表达式集锦 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 4
  • 【FreeRTOS学习计划】 第九节 支持时间片

    FreeRTOS 与隔壁的 RT Thread 和 C OS 一样 都支持时间片的功能 所谓时间片就是同一个优先级下可以有多个任务 每个任务轮流地享有相同的 CPU 时间 享有 CPU 的时间我们叫时间片 在 RTOS 中 最小的时间单位为
  • 随笔:vscode-latex中文配置

    vscode用的久了 感觉确实比texstudio好用 question 1 vscode latex中文配置 vscode安装LaTeX Workshop Extension 默认latexmk就已经可以满足写英文paper的要求了 因为
  • 【STM32】基于STM32F407实现串口通信

    目录 一 通用同步异步收发器 USART 1 USART 简介 2 USART 功能说明 3 USART框图 二 基于HAL库实现串口通信 1 工程创建 2 HAL库UART函数库介绍 3 USART接收与发送 三 总结 四 参考 一 通用
  • vSphere 7.0+Replication 8.3安装配置

    esxi嵌套后建立的VM无法与其它未嵌套的VM通讯 需要更改物理ESXi的网络配置 接受混杂模式 接受mac变更等三个选项 更改kernel网络的配置 勾选vsphere replication 否则配置VM的复制策略时会报错 请验证源主机
  • 嘘!市面上短视频(douyin)“去水印”的工具原来是这样实现的

    现在视频号非常火热 之前在做抖音和快手的人就直接把之前的视频直接搬运过来了 但是从抖音app下载的视频都是带官方水印的 这个是怎么去掉的 哦 不对 他们应该都有保留原视频的吧 但是还有很多人是直接搬运别人的视频的 那他们是怎么去水印的呢 其
  • Cytoscape安装后无法打开

    Cytoscape是一款图形化显示网络并进行分析和编辑的软件 从官网下载了最新的版本 3 7 2 由于Cytoscape需要Java环境才能运行 如果你的电脑还没有Java环境 在安装时最新的3 7 2版本会自动下载并安装Java好环境 自
  • 《深入理解计算机系统》实验二Bomb Lab

    前言 深入理解计算机系统 实验二Bomb Lab的下载和官网文档的机翻请看 深入理解计算机系统 实验二Bomb Lab下载和官方文档机翻 用的调试工具是gdb 用到的指令如下 指令 作用 break 打断点 disassemble 查看汇编
  • Spring Boot中ApplicationRunner与CommandLineRunner

    在实际的开发场景中 经常需要在运行环境之前执行一些类似于读取配置文件 数据库连接操作等 Spring Boot提供了ApplicationRunner和CommandLineRunner来帮助我们实现这些需求 时机 他们执行的时机是为容器启