导入相关依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>
?
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
配置yml文件
server
编写主启动类
##服务的搭建和配置和生产者一致##
调用方式:Ribbon 和 Feign 两种
导入ribbon相关的依赖
<!-- ribbon -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>
Ribbon调用方式:
//编写RestTemplate配置,并配置负载均衡机制默认是轮询(这样可以直接通过服务名去调用)
@Bean
@LoadBalanced
public RestTemplate restTemplate() {
return new RestTemplate();
}
?
?
//调用示例:
@RestController
public class DeptConsumerController {
?
@Resource
private RestTemplate restTemplate;
?
@Resource
private DiscoveryClient client;
?
//服务的生产者的服务名
private static final String REST_URL_PREFIX = "http://springcloud-provider-dept";
?
@GetMapping("/consumer/dept/get/{id}")
public Dept get(@PathVariable("id") Long id) {
Dept dept = restTemplate.getForObject(REST_URL_PREFIX + "/dept/getById?id=" + id, Dept.class);
return dept;
}
}
Feign 调用方式:
//主启动类中需要开启Feign相关的配置
原文:https://www.cnblogs.com/zhu12/p/14930734.html