【视频&交流平台】
à SpringBoot视频
http://study.163.com/course/introduction.htm?courseId=1004329008&utm_campaign=commission&utm_source=400000000155061&utm_medium=share
à SpringCloud视频
http://study.163.com/course/introduction.htm?courseId=1004638001&utm_campaign=commission&utm_source=400000000155061&utm_medium=share
à Spring Boot源码
https://gitee.com/happyangellxq520/spring-boot
à Spring Boot交流平台
http://412887952-qq-com.iteye.com/blog/2321532
【最新动态】
(1)Spring Boot QQ 4群:776151650
(2)Spring Cloud视频更新到最新章节:《Feign添加 fallbackFactory 属性来触发请求进行容灾降级》
(3)SpringBoot微信公众号最新更新《193. Spring Boot 数据库迁移:概述》、《192. Spring Boot 2.0 quartz:任务动态管理-添加》
历史相关章节:
188. Spring Boot 2.0 quartz :回顾
189. Spring Boot 2.0 quartz :Hello World
前言:
在前一篇文章简单了使用了下,但是在实际当中,我们会在Job类中使用Job Data Property和注入Spring的bean等等情况,要如何解呢?
说明:
(1)Spring Boot 版本:2.0.0.RELEASE;
(2)Quartz版本:2.3.0
一、使用Job Data Property
1.1 在JobDetail中设置Job Data
JobDetail构建的时候,是可以设置jobData的,使用的方法是usingJobData(key,value),所以在构建Job的时候,我们可以给Job传递一些data,如下实例(以下代码显示不全,可以左右滑动):
@Bean
public JobDetail myJobDetail() {
return JobBuilder.newJob(MyJob.class).withIdentity("MyJob")
.usingJobData("name","悟纤")
.storeDurably().build();
}
1.2 在Job中接收Job Data
接收是很简单的,主要定义一个属性,然后设置对应的setter方法即可,如下:
public class MyJob extends QuartzJobBean{
private String name;
//Inject the "name" job data property
public void setName(String name) {
this.name = name;
}
@Override
protected void executeInternal(JobExecutionContext ctx) throws JobExecutionException {
System.out.println("hello,"+this.name+");
}
}
二、在Job中注入Service
在Job类中注入service的话,也是很简单的,直接使用@Autowired即可完成注入,然后进行使用了,如下代码:
@Autowired
public HelloService helloService;
还记得在spring boot 1.0的时候,怎么一个费劲嘛?在2.0的话,就可以直接注入使用了,就是这么简单!
点赞、转发、评论,伸出你的双手666…召唤你的小蚂蚁:
你就是你,不一样的小蚂蚁!
分享到:
相关推荐
完成上述配置后,我们还需要编写定时任务类`MyJob`,继承自`org.quartz.Job`,并实现`execute(JobExecutionContext context)`方法。此外,通过`@DisallowConcurrentExecution`注解确保任务不会并发执行。 ```java ...
Spring Boot 是一个快速开发框架,它简化了在Java应用程序中配置Spring和其他库的过程。Quartz 是一个开源的任务调度框架,可以用于创建、管理和执行计划任务。本文将详细讲解如何在Spring Boot项目中集成Quartz...
标题中的“spring2.0 Quartz 执行每天定时任务 普通普是执行任务”涉及到的是在Spring 2.0框架中使用Quartz库来创建并执行每天定时任务的场景。Quartz是一款强大的开源作业调度框架,它可以用来按计划执行各种任务,...
Spring Boot 2.0 版本是对先前版本的重大升级,带来了许多性能优化、新特性和对最新依赖库的支持。在构建 CMS(内容管理系统)时,Spring Boot 的优势在于其自动配置、内嵌式Web服务器、健康检查和监控等特性,使得...
NULL 博文链接:https://wilian.iteye.com/blog/1992365
同时,Spring Boot 2.0的其他特性,如Spring Data、Actuator等,也可以方便地与Quartz结合,为我们的定时任务提供更多的可能性。 总结,Spring Boot 2.0整合Quartz简化了定时任务的开发流程,使得我们可以专注于...
这个类需要继承`org.quartz.Job`接口,并实现`execute`方法。在`execute`方法中,我们可以编写发送邮件和生成报表的逻辑: ```java import org.quartz.JobExecutionContext; import org.quartz....
Spring Boot 是一个流行的 Java 框架,用于简化Spring应用程序的初始设置和配置。Quartz 是一个开源的作业调度框架,常被用来执行定时任务。当我们结合 Spring Boot 和 Quartz,我们可以构建一个强大的定时任务管理...
技术路线Spring Boot 2.0, MySQL 5.68.0, Spring Quartz 2.3, Swagger 2, Logback 配置文件 PropertyLoader.java加载application.properties配置文件。 application.properties包含应用名称、端口、数据库连接...
Spring和CXF结合,可以方便地实现服务的发布、调用和管理,同时利用Spring的依赖注入和AOP(面向切面编程)能力,增强服务的可测试性和可维护性。 3. Spring与Mail整合:Spring的Mail API允许开发者轻松地发送邮件...
在分布式环境下,Spring Boot和Quartz的集成可以利用Spring Cloud Data Flow或者Quartz的Cluster机制来实现任务的分布式管理。Spring Cloud Data Flow提供了一种统一的方式来管理和部署流式任务和批处理作业,包括...
要详细了解如何实现每天定时任务,你需要查看这些内容,例如Job类的实现、配置文件(如`quartz.properties`)以及如何在Spring中配置Trigger和Scheduler。 总之,Spring 2.0与Quartz的集成使得在Java应用中创建和...
下面我们将逐一探讨这些jar包的功能和它们在Spring 2.0中的作用。 1. spring-beans.jar:这是Spring框架的核心模块之一,提供了Bean工厂,它是Spring管理对象(bean)的基础。Bean工厂负责创建、配置和管理应用中的...
接下来,创建一个Quartz作业类(Job)并实现`org.quartz.Job`接口。这个类将定义实际要执行的任务。例如: ```java import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz....
在`pom.xml`文件中,添加Spring Boot的`spring-boot-starter-mail`和`spring-boot-starter-quartz`(或`spring-boot-starter-task`)依赖。这两个依赖分别用于邮件服务和定时任务。 ```xml <!-- Spring Boot Mail...
<bean id="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <!-- 配置Quartz属性 --> <property name="configLocation" value="classpath:quartz.properties"/> <!...
然后,定义Job类并实现`org.quartz.Job`接口,以及触发器(Trigger)来指定何时执行任务。例如: ```java public class MyJob implements Job { @Override public void execute(JobExecutionContext context) { ...
然后,定义你的任务类(Job)并实现`org.quartz.Job`接口: ```java import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; public class MyJob implements ...
Autofac.Extras.Quartz, Quartz.Net的Autofac集成 Autofac.Extras.Quartz用于 Quartz.Net的Autofac集成包。Autofac.Extras.Quartz 为每个石英作业创建嵌套的litefime作用域。 完成作业执行后释放嵌套作用域。这允许...
在Spring Boot 2.0中整合Quartz定时任务,可以实现基于数据库如MySQL的动态任务管理,这在很多需要周期性执行任务的应用场景中非常实用。以下将详细讲解这一过程。 首先,我们要在项目的`pom.xml`文件中添加Quartz...