Spring-cloud-eureka使用feign调用服务接口的具体方法,供大家参考,具体内容如下
基于spring-boot 2.0以上版本完成的微服务架构
pom.xml
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <spring-cloud.version>Finchley.SR1</spring-cloud.version> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>2.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-netflix-core</artifactId> <version>2.0.1.RELEASE</version> <classifier>sources</classifier> <type>java-source</type> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <version>2.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.39</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version> <optional>true</optional> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
feignClient
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; /* * @version 1.0 created by carolon 2018/9/25 17:18 */ @FeignClient(value = "服务名") public interface FeignClient { @RequestMapping(method = RequestMethod.POST, value = "接口地址") String sendDebugInfo(Object debugInfo); }
finally
直接在需要的地方注入该client然后调用即可
@Autowired private FeignService feignService;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍Spring Cloud EureKa Ribbon 服务注册发现与调用,包括了Spring Cloud EureKa Ribbon 服务注册发现与调用的使用技巧和注意事项,需要的朋友参考一下 概述 用一个简单的例子演示Spring Cloud中EureKa和Ribbon的基本用法。 版本和环境 IDEA Spring Boot 1.5.·0 JDK 1.8 Maven 3 构建eu
本文向大家介绍SpringCloud使用Feign实现服务调用,包括了SpringCloud使用Feign实现服务调用的使用技巧和注意事项,需要的朋友参考一下 Spring Cloud Feign简介 Spring Cloud Feign也是一个基础工具类,它整合了Spring Cloud Ribbon和Spring Cloud Hystrix,除了提供这两者的强大功能以外,它还提供了一种声明式的
我第一次尝试尤里卡云注册表,并寻求您的帮助 与服务器端口系列有关吗?工作的那个端口配置为8880,而我遇到麻烦的那个端口配置为9000。请让我知道你的想法 工作的eurekaserver-https://github.com/vijayakumar-psg587/cloudconfigeurekaserver.git
我们正在尝试将Spring Cloud Netflix投入生产环境。目前,我们遇到了一个关于业务逻辑错误处理的问题。 我们使用Feign作为HTTP REST客户端。微服务A需要调用部署在不同JVM(或物理服务器)中的微服务B。微服务B可能会返回一些属于业务的错误消息。例如,A需要从B查询订单信息,但订单ID可能不存在,因此B必须返回错误消息,告诉A此订单不存在。A必须从返回消息中执行判断,以确定
是否有一种方法可以调用支持Eureka的服务,而无需调用消费者向Eureka注册?或者换句话说,没有@EnableEurekClient注释?或者换言之,是否有一种方法可以从非Spring Java应用程序中使用带状负载平衡器调用支持Eureka的服务? 我无法从文档中得到它。有这样的例子吗?
introduction netflix feign是一个类似retrofit进行http调用框架,Feign makes writing java http clients easier 使得编写http client代码更加简单 netflix feign 直接给出一段简单的案例 package com.lkl.netflix.feign; import feign.*; import fe