Java 启动加载器解析
程序员文章站
2022-03-26 15:47:04
如果我们有一段程序需要在spring boot框架启动之后立即执行,这个时候就需要借助启动加载器来完成一、计时器介绍对程序耗时做一个统计计时器使用步骤1.new一个stopwatch2.调用stopwatch.start(): 1.业务校验,是否正在执行 2.保存任务名 3.记录当前时间3.调用stopwatch.stop(): 1.业务校验,是否正在执行 2.计算耗时 3.将当前任务添加到任务列表中 ......
如果我们有一段程序需要在spring boot框架启动之后立即执行,这个时候就需要借助启动加载器来完成
一、计时器介绍
对程序耗时做一个统计
计时器使用步骤
1.new一个stopwatch
2.调用stopwatch.start():
1.业务校验,是否正在执行
2.保存任务名
3.记录当前时间
3.调用stopwatch.stop():
1.业务校验,是否正在执行
2.计算耗时
3.将当前任务添加到任务列表中
4.任务执行数加1
5.清空当前任务
public class ServerApplication {
public static void main(String[] args) throws InterruptedException {
StopWatch mywatch = new StopWatch("mywatch");
mywatch.start("task1");
Thread.sleep(2000L);
mywatch.stop();
mywatch.start("task2");
Thread.sleep(3000L);
mywatch.stop();
mywatch.start("task3");
Thread.sleep(1000L);
mywatch.stop();
System.out.println(mywatch.prettyPrint());
}
二、启动加载器案例演示
todo 添加代码
实现方式一
实现CommandLineRunner接口
重写run方法
实现方式二
实现ApplicationRunner接口
重写run方法
排序规则:
通过order值指定顺序
order值相同ApplicationRunner实现优先
三、启动加载器原理解析
callrRunners实现
两个实现类的差异点
1.执行优先级差异
2.run方法入参不一致
两个实现类的相同点
1.调用点一样
2.实现方法名一样
四、总结
SpringBoot计时器的实现?它有哪些优点?
让你去设计实现一个计时器,你的思路?
怎么实现在SpringBoot启动后执行程序?
启动加载器是如何实现的?
启动加载器的实现有什么异同点?
启动加载器的调用时机?
本文地址:https://blog.csdn.net/CHERISHGF/article/details/113933486