十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
目录
为崇仁等地区用户提供了全套网页设计制作服务,及崇仁网站建设行业解决方案。主营业务为做网站、成都网站设计、崇仁网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!一、创建项目
二、cron 表达式
2.1 符号讲解
三、使用定时任务
3.1 单线程实现
3.2 异步多线程实现
视频链接:学习中心|视频播放页 (boxuegu.com)https://xuexi.boxuegu.com/lesson/?id=1598
使用的idea版本:2022.3
一、创建项目在 pom.xml 文件中添加以下内容
org.springframework.boot spring-boot-starter-parent2.6.11 org.springframework.boot spring-boot-starter-web
二、cron 表达式在线Cron表达式生成器 (qqe2.com)https://cron.qqe2.com/
注意:国外是以周日为一周的第一天,所以 DayofWeek 中的 1-7 是指周日到周六
2.1 符号讲解通用符号:
专有符号:
注意:
@SpringBootApplication
@EnableScheduling // 开启对定时任务的支持
public class TaskApplication {
public static void main(String[] args) {
SpringApplication.run(TaskApplication.class, args);
}
}
@Component
public class Task {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
@Scheduled(cron = "*/6 * * * * *") //每6秒打印当前时间
public void getTime() {
String time = dateFormat.format(new Date());
System.out.println(time);
}
}
默认是单线程的定时任务,如果任务持续时间较长,就会将和后续定时任务拖延,导致丢失任务。
@SpringBootApplication
@EnableScheduling // 开启对定时任务的支持
@EnableAsync // 开启异步
public class TaskApplication {
public static void main(String[] args) {
SpringApplication.run(TaskApplication.class, args);
}
}
@Component
public class Task {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
@Async // 异步
@Scheduled(cron = "*/6 * * * * *") //每6秒打印当前时间
public void getTime1() {
System.out.println(Thread.currentThread().getName() + "-" + dateFormat.format(new Date()));
}
@Async // 异步
@Scheduled(cron = "*/6 * * * * *") //每6秒打印当前时间
public void getTime2() {
System.out.println(Thread.currentThread().getName() + "-" + dateFormat.format(new Date()));
}
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧