一、异步任务
1.在主启动类上添加@EnableAsync //开启异步注解
@EnableAsync //开启异步注解
@SpringBootApplication
public class Springboot04TaskApplication {
public static void main(String[] args) {
SpringApplication.run(Springboot04TaskApplication.class, args);
}
}
2.在要进行异步的方法上加入@Async //告诉spring这个方法是异步的
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@Service
public class AsyncService {
@Async //告诉spring这个方法是异步的
public void hello(){
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("数据处理中....");
}
}
两个核心注解:@EnableAsync @Async
**
二、定时任务
1.在主启动类上加入@EnableScheduling //开启基于注解的定时任务
@EnableScheduling //开启基于注解的定时任务
@SpringBootApplication
public class Springboot04TaskApplication {
public static void main(String[] args) {
SpringApplication.run(Springboot04TaskApplication.class, args);
}
}
2.在要进行定时的方法上加入@Scheduled注解 其中有一个cron属性用来编辑定时时间
@Service
public class ScheduledService {
/*
* second(秒),minute(分),hour(时),day of month(日),month(月),day of week(周几)
* 0 * * * * MON-FRI
* 表示周一到周五每整秒启动一次定时任务
* */
@Scheduled(cron = "0 * * * * MON-FRI")
public void hello(){
System.out.println("hello....");
}
}