Spring任务调度

时间:2017-08-30 09:23:35

标签: java spring spring-mvc scheduled-tasks scheduler

我想使用spring boot实现任务调度。我对弹簧框架不太熟悉。我见过使用@EnableScheduling,@ Scheduduled(...)等注释的简单例子。

但在我的项目中,我想使用JSON配置文件自定义这些任务,这样每次更改任务时我都不需要构建和部署spring项目。 一个示例JSON文件如下所示:

{
    "jobs":{
          "job":{
                "enabled":true,
                 "name": "myJob",
                 "trigger":{
                    "type":"periodic",
                     "initialDelay":1000,
                     "fixedRate":15000
                    },
                   "target": {
                           "id":"task_name",
                            "class":"com.frietec.tasks.MyTask"
                    }
                }                                     
         }
}

我们可以定义com.frietec.tasks包中定义的任意数量的任务。

此配置为我提供了任务管理的灵活性,例如启用或禁用任务,延迟设置等。此配置位于服务器的某个位置,spring项目读取此文件并根据配置调度任务。这种方式为我提供了另一个优势,即部署单个war文件并简单地从客户配置的任务配置中管理任务。

是的,这就是我想要在我的项目中实现的内容,我需要您就如何使用spring任务调度实现这一目标提出想法或建议。

0 个答案:

没有答案