SpringCloud整合zookeeper搭建服务注册中心

编程

1 导入pom

<!--一定要保证安装的zookeeper版本和导入的包版本一致-->

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>

<exclusions>

<!--先排除自带的zookeeper3.5.3-->

<exclusion>

<groupId>org.apache.zookeeper</groupId>

<artifactId>zookeeper</artifactId>

</exclusion>

</exclusions>

</dependency>

<!--添加zookeeper3.4.9版本-->

<dependency>

<groupId>org.apache.zookeeper</groupId>

<artifactId>zookeeper</artifactId>

<version>3.4.6</version>

</dependency>

2 编写yml文件

spring:

application:

name: cloud-consumer-order

cloud:

zookeeper:

# 注册到zookeeper地址

connect-string: localhost:2181

3 在启动类上面开启注解 

@EnableDiscoveryClient

package com.shi.order;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@SpringBootApplication

@EnableDiscoveryClient

public class OrderApplication {

public static void main(String[] args) {

SpringApplication.run(OrderApplication.class, args);

}

}

4 .使用restTemplat进行测试

package com.shi.order.config;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import org.springframework.web.client.RestTemplate;

@Configuration

public class ConfigApplication {

@Bean

@LoadBalanced

public RestTemplate getRestTemplate() {

return new RestTemplate();

}

}

5 . Controller 测试代码

package com.shi.order.controller;

import com.shi.order.entity.CommonResoult;

import com.shi.order.entity.Payment;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import org.springframework.web.client.RestTemplate;

@RestController

public class OrderController {

private static String preUrl = "http://cloud-payment-service";

@Autowired

private RestTemplate restTemplate;

@RequestMapping("/consumer/getPort")

public CommonResoult<String> getPort(){

CommonResoult<String> resoult = restTemplate.postForObject(preUrl + "/product/getPort",null,CommonResoult.class);

return resoult;

}

}

 

以上是 SpringCloud整合zookeeper搭建服务注册中心 的全部内容, 来源链接: utcz.com/z/514704.html

回到顶部