系列文章目录
第一章 – 分布式定时任务框架ElasticJob之JavaApi整合Simple作业
第二章 – 分布式定时任务框架ElasticJob之JavaApi整合DataflowJob作业
第三章 – 分布式定时任务框架ElasticJob之Spring框架整合SimpleJob作业
第四章 – 分布式定时任务框架ElasticJob之Spring框架整合DataflowJob作业
第五章 -分布式定时任务框架ElasticJob之SpringBoot整合SimpleJob作业(实战二)
前言
ElasticJob定时任务框架,目前应用于各企业的项目中,大都是与springboot项目进行整合使用的,本篇博文将详细说明springboot项目如何与ElasticJob进行整合,按这篇博文进行操作,可用于工作之中,由于内容较多,分为两个小章节记录,完整代码会放在第二个章节,好了废话不多说,开肝
一、新建Spring-Boot项目
注:配置完maven后如报了以下错误:
请看另一篇博文:解决方法
如果没有遇到异常,继续以下操作。
在maven仓库中查询ElasticJob需要的依赖,搜索elastic-job,选择2.1.5版本,这是最新的版本
将依赖复制到pom.xml文件中,在整合ElasticJob时会引用到这些依赖包
二、编写ZooKeeper中心配置类
我们需要实现的效果是在application-properties配置文件中,输入zookeeper相关属性时,应用程序可以主动初始化,如何实现整个starter, 类似于spring自动注册数据源,输入spring就有很多提示信息出来
接下来我们要编写Zookeeper属性配置类
点击右上角的提示Open documentation…会进入官方提示文档,我们在编写配置属性类时需要引入这个依赖,将这串依赖复制到pom.xml文件中。
配置属性类编写完后,双击右侧install,构建maven
我们再次在application.properties配置文件输入elasticjob可以自动提示了
然后我们在配置文件,写入zookeeper需要的属性
三.ZooKeeper中心自动配置
新建一个zookeeper注册中心自动装配类,效果是当我们在application.properties配置文件设置属性值时,就会自动去执行它下面的配置
然后我们在这个类里面,写上注册中心初始化的方法,当项目启动时,这个方法就会被执行,在此之前我们需要将ZookeeperProperties这个类注入进来,需要注意的是,在注入之前,要写上@EnableConfigurationProperties(ZookeeperProperties.class)注解,否则项目启动时会报注入失败异常。
注入ZookeeperProperties
@Autowired(required = true)
private ZookeeperProperties zookeeperProperties;
zookeeper注册中心初始化
/**
* @description 注册中心初始化
* @param
* @author ckwu
* @return
* @date 2022-10-07 21:51
*/
@Bean(initMethod = "init")
public CoordinatorRegistryCenter zkCenter() {
// 获取地址列表
String serverList = zookeeperProperties.getServerList();
// 获取命名空间
String namespace = zookeeperProperties.getNamespace();
ZookeeperConfiguration zc = new ZookeeperConfiguration(serverList, namespace);
CoordinatorRegistryCenter crc = new ZookeeperRegistryCenter(zc);
return crc;
}
以上配置完,就可以正常启动项目了,但是自动装配类这么写会被项目启动类扫描到,但官方文档不建议我们这么做,因此我们将这个包移出去,让启动类扫描不到:
将包移出到启动类扫描不到的位置后,还需要在resources目录下新建资源文件夹META-INF,然后在这个文件夹下新建文件spring.factories,文件内容如下:
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.example.autoconfig.ZookeeperAutoConfig
- 这样做的目的地是让项目启动时,spring帮我们找到这个自动装配的文件,使配置方法生效
- 最后debug测试,配置类方法运行成功,且获取到了注册中心的配置
总结
这篇文章介绍了新建一个springboot项目,并且自动装配一个自动配置类,为了接下来整合SimpleJob做的准备工作,因为SimpleJob定时任务运行是依赖于Zookeeper注册中心的。
–
2022-10-08更新,springboot整合simpleJob作业已在
第五章 -分布式定时任务框架ElasticJob之SpringBoot整合SimpleJob作业(实战二)完善,有详细操做流程
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/71703.html