日常工作记录总结帖
生产力工具篇
IDEA优秀插件必备
IDEA快捷键使用
HEXO博客相关技术栈
Java后端技术篇
1,想要在启动SpringBoot时自动运行某接口?
package com.example.controller;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
@Component
public class Hahah implements CommandLineRunner{
@Override
public void run(String… args) throws Exception {
System.out.println(“What the fuck!”);
}
}
记得在类上加@Component注解;
其实类似“开机启动”,两种:ApplicationRunner和CommandLineRunner。
如果想要设定顺序,可以实现org.springframework.core.Ordered接口 或者 @Order(value = X)注解来实现。
动态修改定时器任务:
1.首先这里我们需要重新认识一个类ThreadPoolTaskScheduler:线程池任务调度类,能够开启线程池进行任务调度。
2.ThreadPoolTaskScheduler.schedule()方法会创建一个定时计划ScheduledFuture,在这个方法需要添加两个参数, Runnable(线程接口类) 和CronTrigger(定时任务触发器)
3.在ScheduledFuture中有一个cancel可以停止定时任务。
2, 定时器任务?嫌麻烦?@Schedule 香不香?哈哈。
package com.example.controller;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
@Component
public class Hahaha {
@Scheduled(cron=”0 0/30 * * * ? “)
public void Hello(){
SimpleDateFormat format = new SimpleDateFormat(“yyyy年MM月dd日HH时mm分ss秒”);
Date date = new D