一:简介
定时任务分为静态定时任务和动态定时任务
静态定时任务::依赖于spring-context,静态定时任务将定时时间直接使用注解@Scheduled注解到要定时的方法上,绑定过于耦合,一旦应用启动定时任务就开始了,中间要想更改定时任务(如更改定时时间、更改定时任务相应的逻辑调整等)必须停止服务,手动更改代码重新部署才可,静态定时任务通常用于实现简单的定时任务计划
动态定时任务:依赖于spring-boot-starter-quartz,动态定时任务可以通过一套增删改查将要执行的定时代码和定时时间配置到数据库中,这样可以动态的创建定时任务、更新任务、执行任务、暂停任务、继续执行任务、删除任务操作,这些操作是静态定时任务无法实现的,动态定时任务更加灵活
二:静态定时任务
1. pom.xml
静态定时任务会使用到spring-context中的@Scheduled和@EnableScheduling注解,所以不需要特别引入什么依赖,一般很多依赖中都会间接引用到,如spring-boot-starter-web也会间接引用spring-context