Spring boot 使用 quartz 定时任务。
2019-03-18 11:55
549 查看
直接上干货!
开发环境:IDEA+SpringBoot(2.1.3.RELEASE)+jdk1.8
测试时间:2019.3.18
目的:boot中使用quartz 技术(了解boot框架的情况下)
1.pom.xml 添加依赖 Main主启动类开启注解 @EnableScheduling
[code] <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId> </dependency>
[code]//@EnableAspectJAutoProxy//开启spring Aop的注解 @EnableScheduling//开启定时任务的注解 @SpringBootApplication public class ModelApplication { public static void main(String[] args) { SpringApplication.run(ModelApplication.class, args); } }
2.config配置类
[code]@Configuration public class QuartzConfig { @Bean public JobDetail sendEmailJobDetail(){ return JobBuilder.newJob(SendEmail.class)//指向业务类 .withIdentity("sendEmailTimeJob")//起个名字 .usingJobData("msg", "sendEmailJob")//存储一个 关联键值对 .storeDurably() .build(); } @Bean public Trigger sendEmailJobTrigger() { CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule("0/10 * * * * ?");//cron表达式 每十秒执行一次 return TriggerBuilder.newTrigger() .forJob(sendEmailJobDetail())//JobTrigger绑定JobDetail .withIdentity("sendEmailJobService")//Trigger名字 .withSchedule(cronScheduleBuilder) .build(); } }
3.功能类(业务代码类)
[code]@Component public class SendEmail extends QuartzJobBean { @Autowired private JavaMailSender mailSender; @Override protected void executeInternal(JobExecutionContext context) throws JobExecutionException { //这里写主业务功能,我就已发邮件为例。 String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); System.out.println("开始发邮件了。现在时间是"+nowTime); SimpleMailMessage message = new SimpleMailMessage(); message.setFrom("XXX@163.com"); message.setTo("XXX@qq.com"); message.setSubject("主题:简单邮件"+nowTime); message.setText("测试邮件内容"); mailSender.send(message); } }
4.测试看效果
控制台打印
完成实际需求,邮件发送成功!
就这么简单。欢迎留言讨论。
相关文章推荐
- spring boot环境下使用quartz设置定时任务
- 【定时任务】Spring Boot 中如何使用 Quartz
- Springboot中使用数据库配置Quartz定时任务
- Spring使用之:Quartz定时任务为什么会被阻塞
- Spring Boot 定时任务的使用
- springboot集成quartz实现定时任务
- Spring使用之:Quartz定时任务为什么会被阻塞
- Spring-boot整合Quartz,3、动态配置定时任务
- 定时任务quartz与spring整合(springboot)
- Spring中使用quartz执行定时任务的两种方式
- Spring Boot中实现Quartz动态定时任务
- 使用Spring + quartz实现定时任务调度
- SpringBoot+quartz实现定时任务
- spring-boot 使用@Scheduled 开启定时任务
- 在Spring Boot中使用@Scheduled实现定时任务
- 14. Spring Boot定时任务的使用【从零开始学Spring Boot】
- springboot使用定时任务、异步
- ssh中使用spring的集成quartz 编写定时任务
- 使用spring quartz实现定时任务
- 使用Spring(17)Spring中的定时调度(Scheduling)--传统方式创建Quartz任务