[发明专利]一种基于自定义插件动态管理Feign接口调用地址的方法在审
申请号: | 202211368703.0 | 申请日: | 2022-11-03 |
公开(公告)号: | CN115712512A | 公开(公告)日: | 2023-02-24 |
发明(设计)人: | 王波 | 申请(专利权)人: | 上海镁信健康科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/448;G06F9/445 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200032 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 自定义 插件 动态 管理 feign 接口 调用 地址 方法 | ||
本发明涉及计算机技术领域,具体公开了一种基于自定义插件动态管理Feign接口调用地址的方法,包括如下步骤:S1、生成自定义Stater;S2、在当前微服务项目中使用自定义插件;其中步骤S1中包括以下步骤:S11、基于Spring Initializr创建maven工程;S12、引入依赖;S13、创建类,用于读取配置并封装成属性;S14、创建子类,继承Feign.Builder,注入到spring容器中,并注入配置类,重写Feign.Builder的target方法;S15、用System类的API判断是否是Linux环境;S16、根据target方法的入参对象,从配置类中读取配置的服务与IP端口的映射关系,匹配到配置的地址;S17、完成修改target对象的url值,交由Spring管理;S18、注入okHttp3作为Feign的实现调用类,交由Spring管理;本发明有效减少了开发人员对配置化调用外部Feign接口测试时所耗费的时间。
技术领域
本发明涉及计算机技术领域,具体为一种基于自定义插件动态管理Feign接口调用地址的方法。
背景技术
目前SpringBoot微服务项目之间接口远程调用所通常采用的SpringCloud的Feign技术,本地开发在启动多个微服务相互调用或者调用外部Feign接口时,需要手动修改Feign接口的注解@FeignClient的url值。
具体缺陷就在于:经常手动修改,多次重启服务,花费较多时间不说,还容易把修改后的文件提交到主干分支上,对其它环境的测试运行产生影响,人为失误增加。
具体缺陷的技术原因是:大多数基于SpringCloud微服务架构的开发团队,都不会自己搭建本地注册中心,而是使用测试环境的注册中心,为了避免本地环境的服务对测试环境的影响,通常会关闭服务自动注册,此时微服务之间的调用就会调用失败而需要手动修改Feign接口的url值。
发明内容
本发明的目的在于提供一种基于自定义插件动态管理Feign接口调用地址的方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于自定义插件动态管理Feign接口调用地址的方法,包括如下步骤:
S1、生成自定义Stater;
S11、基于Spring Initializr创建maven工程;
S12、引入依赖;
S13、创建类,用于读取配置并封装成属性;
S14、创建子类,继承Feign.Builder,注入到spring容器中,并注入配置类,重写Feign.Builder的target方法;
S15、用System类的API判断是否是Linux环境;
S16、根据target方法的入参对象,从配置类中读取配置的服务与IP端口的映射关系,匹配到配置的地址;
S17、完成修改target对象的url值,交由Spring管理;
S18、注入okHttp3作为Feign的实现调用类,交由Spring管理;
S2、在当前微服务项目中使用自定义插件。
所述步骤S2中包括以下步骤:
S21、在当前微服务项目中Pom文件Maven中引入自定义插件的依赖;
S22、在当前微服务项目的配置文件中写上服务名与服务调用地址的映射;
S23、在当前为服务项目的配置文件中设置开关插件属性。
所述步骤S12中,所引入的依赖包括但不限于spring-boot-starter-web、spring-cloud-starter-openfeign、okhttp、feign-okhttp。
所述步骤S15中,判断是否为Linux环境以确保在本地使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海镁信健康科技有限公司,未经上海镁信健康科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211368703.0/2.html,转载请声明来源钻瓜专利网。