【springcloudalibaba】-SpringCloud整合Zookeeper代替Eureka(zcw-demo)【十四】

前言

编写本篇博客主要是自己在项目开发中,没有使用到Zookeeper,想通过Demo的练习,查看其怎么进行服务发现与注册的。我们知道zookeeper是一个分布式协调工具,可以实现注册中心功能,下面会通过实例进行讲解我们的zookerper具体的功能:


创建module

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修改pom文件

在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>com.zcw.springcloud2020508</artifactId>
        <groupId>com.zcw</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>cloud-provider-payment-zcw-zk-8004</artifactId>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.zcw</groupId>
            <artifactId>cloud-api-commons</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>

</project>


修改yml文件


server:
  port: 8004
# 服务别名,注册到zookeeper 到注册中心
spring:
  application:
    name: cloud-provider-payment
  cloud:
    zookeeper:
      connect-string: 192.168.21.128:2181

修改启动类

package com.zcw.springcloud;

import com.zcw.springcloud.entities.Payment;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

/**
 * @ClassName : PaymentApplication8004
 * @Description :
 * @Author : Zhaocunwei
 * @Date: 2020-05-13 17:43
 */
@SpringBootApplication
@EnableDiscoveryClient
public class PaymentApplication8004 {
    public static void main(String[] args) {
        SpringApplication.run(PaymentApplication8004.class,args);
    }
}

针对上面的注解EnableDiscoveryClient,用于向使用consul或zookeeper作为注册中心时注册服务

controller


package com.zcw.springcloud.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.UUID;

/**
 * @ClassName : PaymenController
 * @Description :
 * @Author : Zhaocunwei
 * @Date: 2020-05-13 17:53
 */
@RestController
@Slf4j
public class PaymenController {

    @Value("${server.port}")
    private String serverPort;

    @RequestMapping(value = "/payment/zk")
    public String paymentzk(){
        return "springcloud with zookeeper:"+serverPort+ UUID.randomUUID().toString();
    }

}


测试

  • 启动服务
    在这里插入图片描述
原创文章 578 获赞 46 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_32370913/article/details/106084526