需求:应用程序启动后,初始化基础数据、加密证书等操作。

可以使用CommandLineRunner接口来实现,在SpringBoot.run()之后完成资源的初始化工作。

注意:多个Runner需要顺序启动的话,可以使用@Order注解

package sun.flower.diver.modules.system.init;import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;/*** 应用程序启动后加载基础数据 Runner** @Author YangXuyue* @Date 2018/10/28 13:48*/
@Component
@Order(1) public class BaseDataRunner implements CommandLineRunner { @Override public void run(String... strings) throws Exception { System.out.println("start init base data"); } }

package sun.flower.diver.modules.system.init;import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;/*** 应用程序启动后加载证书 Runner** @Author YangXuyue* @Date 2018/10/28 13:50*/
@Component
@Order(2) public class CertificateRunner implements CommandLineRunner { @Override public void run(String... strings) throws Exception { System.out.println("start init certificate info"); } }

package sun.flower.diver;import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;@SpringBootApplication
// 添加注解 @EnableDiscoveryClient,只有这样,服务注册、心跳检测相关配置信息才能被自动加载
@EnableDiscoveryClient public class DiverApplication { public static void main(String[] args) { System.out.println("application start"); SpringApplication application = new SpringApplication(DiverApplication.class); // 添加监听器,此时监听器类不需要标注是一个Bean //application.addListeners(new BaseListener());  application.setBannerMode(Banner.Mode.OFF); application.run(args); System.out.println("application started"); } }

转载于:https://www.cnblogs.com/yang21/p/9865399.html

Spring Boot 5:应用程序启动时初始化资源相关推荐

  1. Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源

    Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源 在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等.今天就给大家介绍一个 Spri ...

  2. Spring Boot 2.0(七):Spring Boot 如何解决项目启动时初始化资源

    在我们实际工作中,总会遇到这样需求,在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等.今天就给大家介绍一个 Spring Boot 神器,专门帮助大家解决项目启动初始化资 ...

  3. (转)Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源

    http://www.ityouknow.com/springboot/2018/05/03/spring-boot-commandLineRunner.html 在我们实际工作中,总会遇到这样需求, ...

  4. java 项目启动初始化_Spring Boot解决项目启动时初始化资源的方法

    前言 在我们实际工作中,总会遇到这样需求,在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等.今天就给大家介绍一个 Spring Boot 神器,专门帮助大家解决项目启动初 ...

  5. 如何在Mysql的Docker容器启动时初始化数据库

    1.前言 Docker在开发中使用的越来越多了,最近搞了一个Spring Boot应用,为了方便部署将Mysql也放在Docker中运行.那么怎么初始化 SQL脚本以及数据呢? 我这里有两个传统方案. ...

  6. docker 容器启动顺序_Docker容器启动时初始化Mysql数据库

    1. 前言 Docker在开发中使用的越来越多了,最近搞了一个Spring Boot应用,为了方便部署将Mysql也放在Docker中运行.那么怎么初始化 SQL脚本以及数据呢? 我这里有两个传统方案 ...

  7. docker mysql数据库初始化_如何在Mysql的Docker容器启动时初始化数据库

    1.前言 Docker在开发中使用的越来越多了,最近搞了一个Spring Boot应用,为了方便部署将Mysql也放在Docker中运行.那么怎么初始化 SQL脚本以及数据呢? 我这里有两个传统方案. ...

  8. Quartz详解和使用CommandLineRunner在项目启动时初始化定时任务

    文章目录 Quartz介绍 自定义CommandLineRunner类: 创建.更新定时任务 service层 自定义QuartzJobBean 智能调度组件 定时任务实体类: mapper接口: 时 ...

  9. Spring Boot+微信小程序_保存微信登录者的个人信息

    1. 前言 微信小程序开发平台,提供有一类 API,可以让开发者获取到微信登录用户的个人数据.这类 API 统称为开放接口. Tip:微信小程序开发平台,会把微信登录用户的个人信息分为明文数据和敏感数 ...

最新文章

  1. 经典高斯算法,一起学习数据结构和算法吧!
  2. 魔改CNN揭秘宇宙大爆炸:物理学的核心是对称性
  3. 67. Add Binary
  4. spring -mvc 将对象封装json返回时删除掉对象中的属性注解方式
  5. 异步通知实验(信号)
  6. 【华为云技术分享】LiteOS无法直接烧录或者烧录失败解决方法--ST-Link
  7. k8s学习(一)——kubectl与api-server之间的交互核心过程
  8. python异常处理有什么意义_怎么学好Python异常处理 五种处理机制是什么
  9. 问题二十五:为什么有时候XnView无法显示PPM图片?
  10. wunderlist_如何从Wunderlist切换到Microsoft做
  11. 从入门到变现|全面解析视频号运营规则,看完少走3天弯路!
  12. 五家渠市谷歌高清卫星地图下载
  13. 蓝牙音乐之A2DP音频流
  14. Linux命令详解-hwclock
  15. gif一键抠图 在线_remove.bg 自动抠图、一键去除图片背景的免费在线工具
  16. 面试题目之:说出至少4种vue当中的指令和它的用法?
  17. 网上如何赚钱?教你利用知识变现来赚钱!
  18. 有趣的计算机课作文,一堂有趣的课作文(精选4篇)
  19. gc2000导出丝印和坐标_GC坐标的导出与引入
  20. PHP来客在线客服系统源码 带安装教程

热门文章

  1. 面试总结之html+css
  2. CFile、CStdioFile、FILE和其他文件操作(转)
  3. flash在影片剪辑里面跳转场景
  4. boot nk.bin by CEPC
  5. 可以编辑vga格式文件的软件-PowerCreator Media Studio
  6. RedHat下JDK1.6安装-利用alternative实现多版本并存(Ubuntu同理)
  7. 【Web】JavaWeb项目为什么我们要放弃jsp?为什么要前后端解耦?为什么要前后端分离?2.0版,为分布式架构打基础。 - CSDN博客
  8. HTML、CSS知识点总结,浅显易懂。
  9. javascript --- 作用域和闭包
  10. 2 中间件的使用、异步action的创建