程序笔记   发布时间:2022-07-21  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Springboot+Dubbo+zk测试大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

Springboot+Dubbo+zk测试

启动zookeeper之前的文章有讲过

Springboot+Dubbo+zk测试

新建一个空项目

创建一个服务提供者,直接使用springboot 项目就行

导入以来 POM

      <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

		
        <!-- https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-spring-boot-starter 这里是dubbo的启动器-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>2.7.8</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.github.sgroschupf/zkclient -->
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>

编写service 服务

Helloservice 就一个方法就行

Springboot+Dubbo+zk测试

public interface Helloservice {

    String sayHello(String msg);
}

HelloserviceImpl

import org.apache.dubbo.config.Annotation.Dubboservice;
import org.springframework.stereotype.service;
//添加道spring容器
@service
//提供注册的服务 后期会扫描到
@Dubboservice
public class HelloserviceImpl implements Helloservice{

    @Override
    public String sayHello(String msg) {
        return "HelLO " + msg;
    }
}


yaml 文件

server:
  port: 9001

dubbo:
#  提供注册的名字
  application:
    name: provider-service-9001
#  注册中心的地址
  registry:
    address: zookeeper://127.0.0.1:2181
#  提供注册的包名
  scan:
    base-packages: com/immortal/providerservice9001/service

启动dubbo-admin监控中心

这个之前的文章也讲过

启动提供者,看看是否注册

这里缺少一个jar包 org/apache/curator/framework/CuratorFrameworkFactory

Springboot+Dubbo+zk测试

<!--    导入一下-->
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-framework</artifactId>
            <version>2.12.0</version>
        </dependency>

重新启动

Springboot+Dubbo+zk测试

还是报错

百度了一下,导入的jar包之间有的地方不兼容,还缺少一些jar,最后找到能运行的依赖 如下:

    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>


        <!-- https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-spring-boot-starter -->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>2.7.8</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.github.sgroschupf/zkclient -->
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>
<!--    导入一下-->
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-framework</artifactId>
            <version>4.2.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-recipes</artifactId>
            <version>4.2.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.apache.zookeeper/zookeeper -->
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.14</version>
        </dependency>

等启动好 去dubbo-admin看一下

发现已经注册进来了

Springboot+Dubbo+zk测试

去写消费者

pom文件 和上面的一样就行

UserserviceImpl

import com.immortal.providerservice9001.service.Helloservice;
import org.apache.dubbo.config.Annotation.DubboReference;
import org.springframework.stereotype.service;

@service
public class UserserviceImpl implements Userservice{


    @DubboReference //通过注册中心调用的
    Helloservice Helloservice;

    @Override
    public String Hello() {
        return Helloservice.sayHello("SpringBoot+Dubbo+Zookeeper");
    }
}

yaml 文件

server:
  port: 8001

dubbo:
  application:
    name: consumer-service-8001
  registry:
    address: zookeeper://127.0.0.1:2181

写一个Controller测试

@RestController
public class HelloController {

    @Autowired
    Userservice userservice;

    @GetMapping("Hello")
    public String Hello(){
        return userservice.Hello();
    }
}

启动去访问 127.0.0.1:8001/Hello

Springboot+Dubbo+zk测试

finish ok

小demo 坑非常多 大家慢慢踩

git 地址

https://gitee.com/immortal_mode/dubbo-zookeeper-springboot

大佬总结

以上是大佬教程为你收集整理的Springboot+Dubbo+zk测试全部内容,希望文章能够帮你解决Springboot+Dubbo+zk测试所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。