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

企业门户网站设计一个公司网站备案吗

企业门户网站设计,一个公司网站备案吗,在线咨询平台系统,做网站怎么学Openfeign配置与使用 前言介绍openfeign使用openfeign导入依赖启动类正式使用测试结果 前言 在springcloud中消费者项目需要调用提供者项目的接口,一开始用的是RestTemplate中的方法。但是RestTemplate进行远程调用时,直接调用controller层的接口&#…

Openfeign配置与使用

    • 前言
    • 介绍openfeign
    • 使用openfeign
      • 导入依赖
      • 启动类
      • 正式使用
      • 测试结果

前言

在springcloud中消费者项目需要调用提供者项目的接口,一开始用的是RestTemplate中的方法。但是RestTemplate进行远程调用时,直接调用controller层的接口,不符合分层的习惯,一般习惯在controller从调用service的接口。

介绍openfeign

Openfeign是springcloud提供的一个声明式http客户端,它使得调用远程服务就想调用本地服务一样,只需要创建一个接口并添加一个注解即可。
feign的负责均衡默认集成了ribbon,所以在nacos下使用feign,默认实现了负载均衡。

使用openfeign

测试时,我们在消费者项目中调用提供者项目的端口。依赖和启动类中的注解,在两个子项目中都需要。

导入依赖

我用的springcloud alibaba的版本是2.2.6.RELEASE

        <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId><version>2.2.0.RELEASE</version></dependency>

启动类

在启动类中增加注解@EnableFeignClients

@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
public class StartNacosProvider {public static void main(String[] args) throws Exception {SpringApplication.run(StartNacosProvider.class, args);}
}
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
public class StartNacosConsumer {public static void main(String[] args) throws Exception {SpringApplication.run(StartNacosConsumer.class, args);}
}

正式使用

在消费者项目中调用提供者的controller接口,所以我们在消费者项目中写feign相关的接口。新建一个feign文件夹,在里面新增一个interface类。

@FeignClient(value = "nacos-provider")
public interface ConsumerFeign {@RequestMapping(value = "/nacos/provider/get/{id}",method = RequestMethod.GET)public String getNacosProvider(@PathVariable Integer id);
}

下面来解释一下
1)

@FeignClient(value = "nacos-provider")

nacos-provider 为提供者项目在nacos注册中心中注册的项目名称
2)

@RequestMapping(value = "/nacos/provider/get/{id}",method = RequestMethod.GET)public String getNacosProvider(@PathVariable Integer id);

为需要调用的提供者项目中的controller层接口。在提供者项目中该接口在controller层是这么写的

    @RequestMapping(value = "/nacos/provider/get/{id}",method = RequestMethod.GET)public String getNacosProvider(@PathVariable Integer id){return "使用provider中的方法,端口号:"+port+",传来参数:"+id;}

在消费者项目的controller就可以实现上面所写的接口。springcloud会为ConsumerFeign接口类生成一个代理实现类,不需要人为创建。

@RestController
public class ConsumerController {@Autowiredprivate RestTemplate restTemplate;@Autowiredprivate ConsumerFeign consumerFeign;// 使用RestTemplate调用provider项目接口@RequestMapping(value = "/nacos/consumer/get/{id}",method = RequestMethod.GET)public String getNacosConsumer(@PathVariable Integer id){return restTemplate.getForObject("http://nacos-provider/nacos/provider/get/"+id,String.class);}// 使用feign调用provider项目接口@RequestMapping(value = "/nacos/consumer/feign/get/{id}",method = RequestMethod.GET)public String getNacosConsumerFeign(@PathVariable Integer id){return consumerFeign.getNacosProvider(id);}
}

provider项目中被调用的controller层接口

    @RequestMapping(value = "/nacos/provider/get/{id}",method = RequestMethod.GET)public String getNacosProvider(@PathVariable Integer id){return "使用provider中的方法,端口号:"+port+",传来参数:"+id;}

测试结果

在这里插入图片描述
可以看到,我调用的是consumer项目中的接口,而实际输出结果显示,调用provider项目接口调用成功。

http://www.yayakq.cn/news/390887/

相关文章:

  • 大庆建设网站表格下载定制网站与模板建站维护
  • 浙江杰立建设集团 网站首页物流网站开发项目书
  • 个人注册公司网站空间献县网站
  • 专业网站运营托管成品短视频app下载有哪些软件直播
  • 宁波网站优化公司中国企业名录
  • 网站改版新闻网站关键词优化互点
  • 海淀网站开发的公司购物网站开发介绍
  • 用pc机做网站并让外网搜到无锡网站制作网站建设
  • 网站后台更新文章 前台不显示建设银行app忘记登录密码
  • 佛山新网站建设咨询wordpress 4.5 安装失败
  • 网站文章怎么做内链wordpress是php文件
  • 做网站蓝色和什么颜色品牌软文案例
  • 有了域名如何建立网站杭州画册设计公司
  • 免费做淘宝客网站有哪些诸城网站建设的文章
  • 如何站自己做网站wordpress 移动站
  • 网站备案号查询系统做网站一班需要多少钱
  • 门户网站的建设思路网页制作基础教程第二版教材
  • 用什么开发和建设网站最好深圳网站开发网站
  • 企业网站的布局类型国内做会展比较好的公司
  • 公司网站建设的系统功能需求分析新网站如何做排在前面
  • 官方门户网站j建设的必要性关于设计的网站有哪些
  • 网站建设社区交流从事网页设计工资高吗
  • 网站模块建设怎么建设免费的网站
  • 江门市网站建设公司站长工具麻豆
  • 冠县网站建设价格达内
  • 天津项目网站建设原创文章网站
  • 湘阴县住房建设局网站内网网站建设软件
  • 公司网站html模板哈尔滨企业建站模板
  • 企业网站推广方案网络营销作业建设公司网站入账
  • 那个网站学做披萨比较好在自己的网站做外链