Spring Boot 2.0 quartz :job data property和inject service
  TEZNKK3IfmPf 24天前 21 0

前言:

       在前一篇文章简单了使用了下,但是在实际当中,我们会在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) {
         = name;
    }
    @Override
    protected void executeInternal(JobExecutionContext ctx) throws JobExecutionException {
        System.out.println("hello,"++");   
    }   
}

二、在Job中注入Service

       在Job类中注入service的话,也是很简单的,直接使用@Autowired即可完成注入,然后进行使用了,如下代码:

    @Autowired
    public HelloService helloService;

     还记得在spring boot 1.0的时候,怎么一个费劲嘛?在2.0的话,就可以直接注入使用了,就是这么简单!

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 24天前 0

暂无评论

推荐阅读
TEZNKK3IfmPf