Eureka入门服务拉取

Eureka服务注册与发现实战
本文介绍了如何在Spring Boot应用中集成Eureka实现服务的注册与发现。首先,我们导入了必要的依赖,并配置了application.yml文件。接着,展示了Controller中的代码,利用DiscoveryClient进行服务发现。最后,启动类启动应用并完成Eureka的集成。

1、导入依赖

	<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
        </dependency>
    </dependencies>

2、配置application.yml:

spring:
  application:
    name: demo_consumer
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka
server:
  port: 9993

3、主要代码:
controller:
注意DiscoveryClient 要导入org.springframework.cloud.client.discovery.DiscoveryClient不然会注入不了

@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private RestTemplate restTemplate;

    @Autowired
    private DiscoveryClient discoveryClient;

    @RequestMapping("/findAll")
    public List<User> findAll() {
        List<ServiceInstance> instancesById = discoveryClient.getInstances("demo_provider");
        ServiceInstance instanceInfo = instancesById.get(0);
        String uri = "http://"+instanceInfo.getHost()+":"+instanceInfo.getPort()+"/user/findAll";
        return restTemplate.getForObject(uri, java.util.List.class);
    }

}

启动类:

/*开启Eureka发现*/
@EnableEurekaClient
@SpringBootApplication
public class Starter {
    public static void main(String[] args) {
        SpringApplication.run(Starter.class, args);
    }

    @Bean
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值