springcloud之Feign基本使用
springCloud 使用feign调用微服务的基本流程
·
废话不多说了,直接上代码。
首先导入feign的依赖:
<!-- 添加feign声明式webservice client -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
</dependency>
主程序:
@SpringBootApplication
@EnableEurekaClient
//支持声明式webservice client
@EnableFeignClients
public class SpringCloudMovieApplication {
public static void main(String[] args) {
SpringApplication.run(SpringCloudMovieApplication.class, args);
}
}
配置文件如下:
server.port=8892
spring.application.name=spring-cloud-feign
logging.level.root=info
logging.level.org.org.hibernate=info
logging.level.com.com.chukun=debug
eureka.client.serviceUrl.defaultZone=http://chukun:123456@localhost:8761/eureka/
eureka.instance.prefer-ip-address=true
eureka.instance.instance-id=${spring.application.name}:${spring.application.instance_id:${server.port}}
Feign客户端接口:
//name属性表示请求哪个微服务,这里请求的是用户微服务,name表示用户微服务的vip
@FeignClient(name="spring-cloud-user")
public interface IUserService {
@RequestMapping(value="/user/{id}",method=RequestMethod.GET)//注意,这里不支持@GetMapping
/**
* @PathVariable("id")不这么写,会报如下错:PathVariable annotation was empty on param 0.
* @param id
* @return
*/
public User findUserById(@PathVariable("id") long id);
}
Feign的基本配置就写好了,现在就可以启动eureka服务中心,与用户微服务,即可使用声明式webservice client Feign调用服务了。
更多推荐
已为社区贡献1条内容
所有评论(0)