项目名称:cloud-consumerzk-order80

鼠标点击父工程项目右击 —> New —> Module

具体创建步骤参考【搭建EurekaServer端服务注册中心

1.添加pom.xml

  1. <dependencies>
  2. <!-- SpringBoot整合Web组件 -->
  3. <dependency>
  4. <groupId>org.springframework.boot</groupId>
  5. <artifactId>spring-boot-starter-web</artifactId>
  6. </dependency>
  7. <!-- SpringBoot整合zookeeper客户端 -->
  8. <dependency>
  9. <groupId>org.springframework.cloud</groupId>
  10. <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
  11. <!--先排除自带的zookeeper-->
  12. <exclusions>
  13. <exclusion>
  14. <groupId>org.apache.zookeeper</groupId>
  15. <artifactId>zookeeper</artifactId>
  16. </exclusion>
  17. </exclusions>
  18. </dependency>
  19. <!--添加zookeeper3.4.9版本-->
  20. <dependency>
  21. <groupId>org.apache.zookeeper</groupId>
  22. <artifactId>zookeeper</artifactId>
  23. <version>3.4.9</version>
  24. </dependency>
  25. <dependency>
  26. <groupId>org.springframework.boot</groupId>
  27. <artifactId>spring-boot-devtools</artifactId>
  28. <scope>runtime</scope>
  29. <optional>true</optional>
  30. </dependency>
  31. <dependency>
  32. <groupId>org.projectlombok</groupId>
  33. <artifactId>lombok</artifactId>
  34. <optional>true</optional>
  35. </dependency>
  36. <dependency>
  37. <groupId>org.springframework.boot</groupId>
  38. <artifactId>spring-boot-starter-test</artifactId>
  39. <scope>test</scope>
  40. </dependency>
  41. </dependencies>

2.添加application.yml配置文件

server:
  port: 80

spring:
  application:
    name: cloud-consumer-order
  cloud:
    #注册到zookeeper地址
    zookeeper:
      connect-string: 192.168.128.132:2181

3.添加主启动类

@SpringBootApplication
@EnableDiscoveryClient
public class ConsumerZkApplication {
    public static void main(String[] args) {
        SpringApplication.run(ConsumerZkApplication.class, args);
    }
}

4.添加RestTemplate的JavaBean配置

@Configuration
public class ApplicationContextConfig {

    @Bean
    @LoadBalanced
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }

}

5.添加OrderZKController

@RestController
@Slf4j
public class OrderZKController {
    public static final String INVOKE_URL = "http://cloud-provider-payment";

    @Resource
    private RestTemplate restTemplate;

    @GetMapping(value = "/consumer/payment/zk")
    public String paymentInfo() {
        String result = restTemplate.getForObject(INVOKE_URL + "/payment/zk", String.class);
        return result;
    }
}

6.启动cloud-consumerzk-order80

启动成功后可以看到Zookeeper中已经有了我们的cloud-consumer-order服务了
image-20200312223958729.png

浏览器输入:http://localhost/consumer/payment/zk

返回如下结果,表示服务之间的调用已经成功了

springcloud with zookeeper: 8004 4a0a3dea-66c5-4fd9-98b1-a2075f9b820d