springboot 实现SchedulingConfigurer定时任务 如何利用zookeeper分布式锁实现分布式

定时任务的代码如下

@Component
@Configuration
@EnableScheduling
public class TestCron implements SchedulingConfigurer {
    private static Log logger = LogFactory.getLog(TestCron.class);


    private String collectorDelbeginCron = "0 0/4 * * * ? ";

    @Override
    //@DistributedScheduleInfo(name = "TestCron")
    public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
        Runnable collectortask = new Runnable() {
            @Override
            public void run() {
                logger.info("测试cron 正在执行。。。。");
            }
        };

//        任务触发,可修改任务的执行周期.
        Trigger collectortrigger = new Trigger() {
            @Override
            public Date nextExecutionTime(TriggerContext triggerContext) {
                logger.warn("====当前时间==="+ DateUtil.nowTime()+",测试cron===="+collectorDelbeginCron);
                CronTrigger collectortrigger = new CronTrigger(collectorDelbeginCron);
                Date nextExec = collectortrigger.nextExecutionTime(triggerContext);
                return nextExec;
            }
        };
        scheduledTaskRegistrar.addTriggerTask(collectortask, collectortrigger);
    }
}

用xxjob不好吗?为啥要自己写