1.对于注册进eureka里面的微服务,可以通过服务发现来获得该服务的信息
2.修改microservicecloud-provider-dept-8001工程的DeptController
@Autowired
private DiscoveryClient client;
@RequestMapping(value = "/dept/discovery", method = RequestMethod.GET)
public Object discovery(){
List<String> list = client.getServices();
System.out.println("**********" + list);
List<ServiceInstance> srvList = client.getInstances("MICROSERVICECLOUD-DEPT");
for (ServiceInstance element : srvList) {
System.out.println(element.getServiceId() + "\t" + element.getHost() + "\t" + element.getPort() + "\t"
+ element.getUri());
}
return this.client;
}
3.在主启动类上加上@EnableDiscoveryClient //服务发现
4.自测
先要启动EurekaServer,再启动DeptProvider8001_App主启动类,之后访问http://localhost:8001/dept/discovery
修改microservicecloud-consumer-dept-80工程的DeptController_Consumer,消费端可以调用服务发现
@RequestMapping(value="/consumer/dept/discovery")
public Object discovery()
{
return restTemplate.getForObject(REST_URL_PREFIX+"/dept/discovery", Object.class);
}