Ensine passo a passo como integrar os benefícios do SpringBoot e do XXL-JOB para iniciantes

Há algum tempo, meu chefe me pediu para usar o springboot para integrar o xxl-job. Aqui estão algumas das minhas etapas de integração, digitadas palavra por palavra. Espero que seja útil para você. Obrigado pela leitura.

Este exemplo é baseado na estrutura Ruoyi (Ruoyi tem suas próprias tarefas agendadas).Este exemplo é apenas para aprendizado.

Ruo Yi:
https://gitee.com/y_project/RuoYi-fast

XXL-JOB:https://www.xuxueli.com/xxl-job/

Primeiro, inicie o projeto Ruoyi:
Insira a descrição da imagem aqui
Etapa 2: Obtenha o código-fonte xxl:
https://gitee.com/xuxueli0323/xxl-job

Em seguida, use a ideia para abrir xxl-job-admin e configurar o banco de dados

Em seguida, inicie o acesso:
http://127.0.0.1:8080/xxl-job-admin/toLogin
Insira a descrição da imagem aqui
Conta padrão: admin Senha padrão: 123456

Interface após login bem-sucedido:
Insira a descrição da imagem aqui
Etapa 3: Adicione ao pom.xml do projeto Ruoyi

<dependency>
    <groupId>com.xuxueli</groupId>
    <artifactId>xxl-job-core</artifactId>
    <version>2.3.0</version>
</dependency>

Etapa 4: adicionar ao application.yml do projeto Ruoyi

xxl:
  job:
    admin:
      addresses: http://127.0.0.1:8080/xxl-job-admin
    executor:
      appname: xxl-job-executor-sample # 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册
      address:
      ip:
      port: 9999
      logpath: G:/
      logretentiondays: -1
    accessToken: ### 执行器通讯TOKEN [选填]:非空时启用;

Em seguida, crie uma nova classe (XxlJobConfig)

@Configuration
public class XxlJobConfig {
    
    
    private Logger logger = LoggerFactory.getLogger(XxlJobConfig.class);

    @Value("${xxl.job.admin.addresses}")
    private String adminAddresses;

    @Value("${xxl.job.accessToken}")
    private String accessToken;

    @Value("${xxl.job.executor.appname}")
    private String appname;

    @Value("${xxl.job.executor.address}")
    private String address;

    @Value("${xxl.job.executor.ip}")
    private String ip;

    @Value("${xxl.job.executor.port}")
    private int port;

    @Value("${xxl.job.executor.logpath}")
    private String logPath;

    @Value("${xxl.job.executor.logretentiondays}")
    private int logRetentionDays;

    @Bean
    public XxlJobSpringExecutor xxlJobExecutor() {
    
    
        logger.info(">>>>>>>>>>> xxl-job config init.");
        XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
        xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
        xxlJobSpringExecutor.setAppname(appname);
        xxlJobSpringExecutor.setAddress(address);
        xxlJobSpringExecutor.setIp(ip);
        xxlJobSpringExecutor.setPort(port);
        xxlJobSpringExecutor.setAccessToken(accessToken);
        xxlJobSpringExecutor.setLogPath(logPath);
        xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);

        return xxlJobSpringExecutor;
    }

}

Em seguida, inicie o projeto Ruoyi e vá novamente à central de despacho para verificar o executor:
Insira a descrição da imagem aqui
Se você descobrir que o registro foi bem-sucedido, significa que a integração foi bem-sucedida.

Etapa 5: adicione uma classe de processamento de tarefas ao projeto Ruoyi, o conteúdo é o seguinte

@Component
public class TestJob {
    
    
    @XxlJob("testHandler")
    public void testHandler() throws Exception {
    
    
        System.out.println("我执行了------------");
    }
}

Etapa 6: Configurar o gerenciamento de tarefas
Insira a descrição da imagem aqui
Etapa 7: Executar e visualizar
Insira a descrição da imagem aqui
Verifica-se que pode ser executado com sucesso. O executor nele indica que a integração foi bem-sucedida.

ps: Não é fácil de integrar. Espero coletá-lo. Talvez seja útil para você no futuro.

Acho que você gosta

Origin blog.csdn.net/u013389594/article/details/115267023
Recomendado
Clasificación