关于java:SpringCloud获取注册中心上服务列表

11次阅读

共计 1074 个字符,预计需要花费 3 分钟才能阅读完成。

@DiscoveryClient 注解

应用 @DiscoveryClient 获取服务列表

基于 SpringCloud 整合 Consul 咱们批改一下 MemberApiController.java:

package com.baba.wlb.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.discovery.DiscoveryClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * @Author wulongbo
 * @Date 2021/1/9 15:20
 * @Version 1.0
 */@RestController
public class MemberApiController {@Value("${server.port}")
    private String serverPort;
 @Autowired
 private DiscoveryClient discoveryClient;
 @RequestMapping("/getMember")
    public String getMember() {return "我是会员服务! 端口号:" + serverPort;}
    @RequestMapping("/discoveryServer")
    public String discoveryServer() {List<ServiceInstance> serviceInstances = discoveryClient.getInstances("consul-member");
 return serviceInstances.get(0).getHost() + serviceInstances.get(0).getPort();}
}

启动我的项目

启动 AppMember.java

浏览器拜访 http://localhost:8501/discoveryServer

正文完
 0