SpringCloud-Eureka(服务发现EnableDiscoveryClient和EnableEurekaClient)

                                           Eureka服务发现

注明:此项目为本人学习尚硅谷老师的教学视频然后整理核心的配置文件,所有的项目均在以下地址下载。
https://github.com/xwbGithub/microservicecloud下载

本项目请参考microservicecloud-provider-dept-8001

@EnableDiscoveryClient基于spring-cloud-commons,@EnableEurekaClient基于spring-cloud-netflix。
其实用更简单的话来说,就是如果选用的注册中心是eureka,那么就推荐@EnableEurekaClient,如果是其他的注册中心,那么推荐使用@EnableDiscoveryClient

核心文件配置

@SpringBootApplication
@EnableEurekaClient //本服务启动后会自动注册进Eureka服务中
@EnableDiscoveryClient //服务发现
public class DeptProvider8001_App {
    public static void main(String[] args) {
        SpringApplication.run(DeptProvider8001_App.class, args);
    }
}

在controller打印服务发现的内容信息

@RestController
public class DeptController {
    @Autowired
    private DiscoveryClient client; 
    @RequestMapping(value = "/dept/discovery", method = RequestMethod.GET)
    public Object discovery() {
        List list = client.getServices();
        System.out.println("*******************" + list);
        List 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;
    }
}

访问结果

SpringCloud-Eureka(服务发现EnableDiscoveryClient和EnableEurekaClient)_第1张图片

SpringCloud-Eureka(服务发现EnableDiscoveryClient和EnableEurekaClient)_第2张图片

你可能感兴趣的:(SpringCloud)