1. Glue(java)模式
如果要使用日志框架,不能使用slf4j,需要使用xxl-job提供的Log类。
@Component
public class DemoGlue extends IJobHandler {
private static Logger logger = LoggerFactory.getLogger(DemoGlue.class);
@Autowired
private Dao Dao;
@Override
public void execute() throws Exception {
logger.info("测试Gule模式");
/**
* 业务代码
*/
}
}
2. Bean模式
此模式下日志框架可以使用@slf4j
@Component
@Slf4j
public class testJob {
@XxlJob("testJob")
public void testJobs() {
/**
* 业务代码
*/
log.info("xxl-job 定时任务测试: {}", LocalDateTime.now());
}
}
3. 执行器注册
注册主要用到的配置为address属性 如果为此添加值则需要在ip或域名前添加http://
我是直接将XxlJobConfig 中自配置文件或nacos中获取使用@Value参数进行屏蔽了
让admin自行去ip+port的拼接,不好的点为后续多个执行器需要对address进行修改。
xxl:
job:
admin:
addresses: http://127.0.0.1:8097/xxl-job-admin
accessToken: default_token
executor:
appname: xxl-job-aike
address:
ip: 192.168.0.2
port: 8099
logpath: /data/applogs/xxl-job/jobhandler
logretentiondays: 30