当前位置: 首页 > news >正文

网站建设 千助简洁物流网站模板免费下载

网站建设 千助,简洁物流网站模板免费下载,素马杭州网站设计介绍,曹鹏wordpress教程Feign#xff0c;在微服务框架中#xff0c;是的服务直接的调用变得很简洁、简单#xff0c;而不需要再编写Java Http调用其他微服务的接口。 动态feign 对于fegin调用#xff0c;我们一般的用法#xff1a;为每个微服务都创建对应的feignclient接口#xff0c;然后为每…Feign在微服务框架中是的服务直接的调用变得很简洁、简单而不需要再编写Java Http调用其他微服务的接口。 动态feign 对于fegin调用我们一般的用法为每个微服务都创建对应的feignclient接口然后为每个微服务的controller接口一一编写对应的方法去调用对应微服务的接口。 例如下面这样 //system FeignClient(name system) public interface SystemClient {GetMapping(/system/test1)JsonResult test1(String test1);GetMapping(/system/test2)JsonResult test2(String test2);.... }//user FeignClient(name user) public interface UserClient {GetMapping(/user/test1)JsonResult test1(String test1);GetMapping(/user/test2)JsonResult test2(String test2);.... }这样写的话可能会有些累赘那么我们能不能创建一个动态的feign当调用sytem微服务的时候传递一个feignclient的name为system进去然后定义一个通用的方法指定调用的url传递的参数就可以了呢 答案是可以的_ 定义一个通用的接口通用的getpost方法 public interface DynamicService {PostMapping({url})Object executePostApi(PathVariable(url) String url, RequestBody Object params);GetMapping({url})Object executeGetApi(PathVariable(url) String url, SpringQueryMap Object params); }executePostApi(post方法) url表示你要调用微服务的接口url一般来说是对应controller接口的url params为调用该接口所传递的参数这里加了RequestBody那对应的controller接口接收参数也需要加上该注解。 定义一个动态feignclient Component public class DynamicClient {Autowiredprivate DynamicFeignClientFactoryDynamicService dynamicFeignClientFactory;public Object executePostApi(String feignName, String url, Object params) {DynamicService dynamicService dynamicFeignClientFactory.getFeignClient(DynamicService.class, feignName);return dynamicService.executePostApi(url, params);}public Object executeGetApi(String feignName, String url, Object params) {DynamicService dynamicService dynamicFeignClientFactory.getFeignClient(DynamicService.class, feignName);return dynamicService.executeGetApi(url, params);} }executePostApi(post方法) feignName表示需要调用的微服务的名称一般对应application.name例如system url表示你要调用微服务的接口url一般来说是对应controller接口的url params为调用该接口所传递的参数这里加了RequestBody那对应的controller接口接收参数也需要加上该注解。 定义一个动态feignclient工厂类 Component public class DynamicFeignClientFactoryT {private FeignClientBuilder feignClientBuilder;public DynamicFeignClientFactory(ApplicationContext appContext) {this.feignClientBuilder new FeignClientBuilder(appContext);}public T getFeignClient(final ClassT type, String serviceId) {return this.feignClientBuilder.forType(type, serviceId).build();} }主要的作用是帮我们动态的创建一个feignclient对象 好了具体的操作步骤就是上面所说的了是不是很通用了呢_ 通用是通用了那怎么玩呢如何使用 使用的方式也是十分的简单啦_ DynamicClient dynamicClient SpringUtil.getBean(DynamicClient.class); Object result dynamicClient.executePostApi(system, /system/test, new HashMap()); System.out.println(JSONObject.toJSONString(result));先获取到DynamicClient对象然后直接调用executePostApi方法 “system”表示调用微服务的名称一般对应application.name “/system/test”表示调用的url new HashMap()为需要传递的参数 好了这样就实现了一个通用版的feignclient那我们就可以愉快的编写代码了_
http://www.hkea.cn/news/14446612/

相关文章:

  • 哪个网站有做烘焙蛋糕专业的配方做什么网站赚钱
  • 建设电影网站论文三亚政策最新消息
  • 中卫企业管理培训网站wordpress 自动升级
  • 长春建设网站公司设计网页代码源代码
  • 做公司网站要走哪些流程网站建设 目的
  • 城建设投资公司网站网站广告制作
  • 贵州省省建设厅网站中关村在线手机论坛
  • 杭州如何设计网站首页wordpress访问太慢
  • wordpress 仿站页面设置自定义wordpress
  • 网站开发业内人士网页版我的世界
  • 东莞网站公司哪家好网站如何快速推广
  • 武城做网站wordpress 后台 谷歌字体
  • 渭南市建网站企业网站优化找哪家
  • 主机做网站服务器怎么设置微信营销的优缺点
  • 石家庄网站定制制作phpstudy配置网站
  • 网站鼠标特效代码企业网站建设河北
  • 免费做网站网站有人哪些深圳搜索优化排名公司
  • 南宁网站设计公司排名淘宝网站的建设情况
  • 广州微信网站制作门源网站建设公司
  • 单位网站建设公司建设电子商务网站的启示
  • 临沂网站wordpress安装不了插件
  • 上海网站开发公司外包商务网站开发流程有哪三个阶段
  • 没电脑可以建网站吗建设部网站上标准合同
  • 跨境网站建站wordpress 插件页面
  • ui设计参考网站有哪些网址导航类网站如何做推广
  • 做gif表情包的网站请叫我鬼差大人王烨
  • 男科医院网站建设策略网站系统维护一个月正常吗
  • 网站定制开发什么意思东莞百度代做网站联系方式
  • 电商网站建设方案PPT收费网站设计
  • 站长之家是干嘛的wordpress id3