SpringBoot+zookeeper+dubbo+POI 集成RPC,对excel 完成自动化接口测试

本文参考借鉴了部分博友的学习心得,在此表示感谢。这个小demo仅用于示范springboot中如何集成使用dubbo及读取excel数据调用dubbo接口获取结果返回,重新写入excel的结果列,欢迎随时交流。
摘要由CSDN通过智能技术生成

一、zookeeper的安装与启动

下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper

下载完成之后,解压,进入到”conf”目录下,新建一个”zoo.cfg”

内容如下:

tickTime=2000  
dataDir= /Users/chenqimiao/zookeeper-3.4.8/data 
dataLogDir=/Users/chenqimiao/zookeeper-3.4.8/logs  
clientPort=2181

参数说明:

#tickTime: zookeeper中使用的基本时间单位, 毫秒值.
#dataDir: 数据目录. 可以是任意目录.
#dataLogDir: log目录, 同样可以是任意目录. 如果没有设置该参数, 将使用和#dataDir相同的设置.
#clientPort: 监听client连接的端口号.

执行

这里写图片描述

以上介绍的就是zookeeper的单机模式。当然还有伪分布式和分布式的部署方式,这里就不再阐述,有兴趣的可以自行百度。

二、dubbo-admin的部署

更新下链接,不知道是不是这个项目合入Apache的缘故,链接都变成了https://github.com/apache/incubator-dubbo/

按照常理,直接去
https://github.com/alibaba/dubbo(https://github.com/apache/incubator-dubbo)
下载,然后进入下面的dubbo-admin目录,进行mvn打包即可,但是不知道为何,却找不到dubbo-admin这个目录。

那就直接去下载他们打包好的源代码吧:https://github.com/alibaba/dubbo/releases(https://github.com/apache/incubator-dubbo/releases)

这里写图片描述

方法1、解压后,根目录里存在dubbo-admin,进入 mvn package -Dmaven.test.skip=true
安装完后,生成target目录,进入这个目录,找到dubbo-admin-2.6.0这个目录,把这个目录全部copy到tomcat的目录webapps下的ROOT下面(删除tomcatwebapps目录下ROOT原有内容)


方法2、解压后,根目录里存在dubbo-admin,进入 mvn install -Dmaven.test.skip=true
安装完后,生成target目录,进入这个目录,找到dubbo-admin-2.6.0.war,把这个war包copy到tomcat的目录webapps下的ROOT下面(删除tomcat webapps目录下ROOT原有内容),然后使用jar xvf dubbo-admin-2.6.0.war解压war包,把解压后的内容全部放到ROOT目录下


启动tomcat,就可以看到dubbo-admin的界面,默认帐号密码root/root

启动tomcat方法:进入目录/home/admin/apache-tomcat-8.5.24/bin,然后 sh startup.sh
这里写图片描述


在目录/home/admin/apache-tomcat-8.5.24/webapps/ROOT/WEB-INF下的配置dubbo.properties,可以修改帐号密码,以及注册信息
这里写图片描述

三、利用IDEA构建spring boot生产者和消费者

1、新建springboot 项目,项目名称springboot-dubbo-server 即生产者

这里写图片描述
这里写图片描述

一路next完成之后,在pom中加入如下依赖(dubbo和zookeeper)

       <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>dubbo</artifactId>
            <version>2.4.10</version>
            <exclusions>
                <exclusion>
                    <artifactId>spring</artifactId>
                    <groupId>org.springframework</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.6</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>

此处需要修改pom.xml的一个设置 ,下文加黑部分,这样maven install的包被引用后才可用

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
        </plugins>
    </build>

生产者的包配置如下,记住这个配置 ,一会再消费者处会用到

    <groupId>com.dubbo</groupId>
    <artifactId>server</artifactId>
    <version>0.0.1</version>
    <packaging>jar</packaging>

接下来先构建一个生产者

来一个测试接口:

package com.dubbo.server.service;

/**
 * @author Mr.C
 * @Description
 * @create 2018/7/16 17:43
 * Copyright: Copyright (c) 2018
 * Company:CWWT
 */
public interface TestService {
   

    String sayHello(String name);

}

来一个实现类

package com.dubbo.server.service.impl;

import com.dubbo.server.service.TestService;

/**
 * @author Mr.C
 * @Description
 * @create 2018/7/16 17:44
 * Copyright: Copyright (c) 2018
 * Company:CWWT
 */
public class TestServiceImpl implements TestService {
   
    @Override
    public String sayHello(String name) {
        return "Hello " + name + "!";
    }
}

在resource下面加入一个providers.xml,添加如下配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <dubbo:application name="dubbo-provider" 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值