集群环境~任务调度怎样在指定服务器执行任务?

1. 定时任务
package com.gblfy;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * 任务调度指定执行器执行任务
 *
 * @author gblfy
 * @Date 2022-06-13
 **/
@Slf4j
@RestController
public class EnvController {
    
    

    @Value("${controlFlag}")
    private String controlFlag;


    //每天定时6点启动任务
    @Scheduled(cron = "00 00 06 * * ?")
    public void taskScheduling() {
    
    
        if ("1".equals(this.controlFlag)) {
    
    
            log.info("任务调度获取的controlFlag状态位为,->{}" + this.controlFlag);
        }
    }

    @GetMapping("/env")
    public String env() {
    
    
        System.out.println("读取环境变量->controlFlag:" + this.controlFlag);
        if ("1".equals(this.controlFlag)) {
    
    
            return "环境变量controlFlag为" + this.controlFlag;
        } else {
    
    
            return "环境变量controlFlag为" + this.controlFlag;
        }
    }
}

2. 启动方式
java -jar demo-0.0.1-SNAPSHOT.jar --controlFlag=1
3. 方案
java -jar xxx.jar --key=value

获取

@Value("${key}")
private String controlFlag;

猜你喜欢

转载自blog.csdn.net/weixin_40816738/article/details/125256288
今日推荐