开发测试平台(四)工具箱之dubbo接口页面

1、在templates模板下新建一个tool包,里面新建一个dubbo.ftl模板,也才用

<#include "/layout/layout.ftl">

<@body>

</@body>

2、在controlle层里新建一个包tool,新建一个类DubbooController,访问到dubbo.ftl页面上

3、引入bootstrap的js文件复制bootstrap 和bootstrap-select这两个包到static 下的lib包下面

4、把css可以单独抽出到一个文件中

5、在dubbo.ftl页面,引入bootstrap的js 和css文件

6、下拉框例子
<select id="select" class="selectpicker show-tick form-control" 
data-live-search="true" ></select>

下拉框其他方法
$("#select").html("<option value='值'>显示文本</option>"); //动态增加子元素
             $("#select").selectpicker('refresh'); //动态刷新
$("#select").val(); //获取当前选中的值,和jquery获取值一样

7、按钮

button
<input type="button" class="btn btn-primary" value="按钮" 
οnclick="method()"/>
样式 btn btn-primary 两个按钮样式

8、调整行间距

调整行上下间距
.row {margin-top: 5px;margin-bottom: 5px;}

9、编写js 单独放到一个文件夹中,在里面写三个方法,并且绑定到按钮onclick上

10、第一个解析ip按钮,先写js里的方法,然后写service层,再写controller,注意controller层的 方法要用@ResponseBody 这样返回的是一个json格式, 否则会报404,返回的是一个视图,使用ZKClient ,固定写法,

dubboNodeList = zkClient.getChildren("/dubbo/" + interfaceName + "/providers");

用pom添加依赖包,new一个zKClient, 并且用到了match

Matcher matcher = ipPattern.matcher(url);

使用正则表达式,含义是第一出现//,和第一出现/之间的

static Pattern ipPattern = Pattern.compile("(?<=//).*(?=/)");

11、第二个解析方法按钮,使用TelnetSocket,解析服务里的方法

使用截取

 split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回,

 public static void main(String args[]) {
        String str = new String("Welcome-to-Runoob");
 
        System.out.println("- 分隔符返回值 :" );
        for (String retval: str.split("-")){
            System.out.println(retval);
        }
- 分隔符返回值 :
Welcome
to
Runoob

substring

substring() 方法返回字符串的子字符串。

public class Test {
    public static void main(String args[]) {
        String Str = new String("www.runoob.com");
 
        System.out.print("返回值 :" );
        System.out.println(Str.substring(4) );
 
        System.out.print("返回值 :" );
        System.out.println(Str.substring(4, 10) );
    }
}

返回值 :runoob.com
返回值 :runoob

12,调用接口按钮

先写一个布局,参数和 结果 ,引入jsonEditor插件,引入js和css 样式,复制jsoneditor包到lib包下面

<link href="/lib/jsoneditor/css/jsoneditor.min.css" rel="stylesheet" />
<script src="/lib/jsoneditor/js/jsoneditor.min.js"></script>
jsonEditorUtil.js

function initJsonEditor(elementId,mode) {
    var jsonOptions = {
        mode: mode, modes: ["code","tree", "text"],
        onError: function (err) {
            alert(err.toString());
        }
    }
    var container=document.getElementById(elementId);
    var jsonEditor=new JSONEditor(container,jsonOptions);
    return   jsonEditor;
}

13、同样使用截取 ,split转成数组,和 substring 截取,在dubbo.ftl里写这个,jsonEditor 绑定方式写在js里


<script type="text/javascript">
    var paramJsonEditor;
    var resultJsonEditor;
    $(function () {
//        $(".selectpicker").selectpicker();
        paramJsonEditor = initJsonEditor("param","tree");
        resultJsonEditor = initJsonEditor("result","tree");
    })


</script>

dubbo.js 里的写ajax,获取方式,如下,jsonEditor 获取的方式不是用jquery,是用

var param=paramJsonEditor.get();
 success:function (result) {
            console.info(result.success);
            var o=$.parseJSON(result);
            resultJsonEditor.set(o);

        }

 

Doe 发布 [V1.0.0] 前段时间排查某问题的时候,想要快速知道某些dubbo接口(三无)的响应结果,但不想启动项目(因为这些项目不是你负责的,不会部署而且超级笨重),也不想新建一个dubbo客户端项目(占地方),也不想开telnet客户端连接口(麻烦而且有限制)。所以扣了dubbo的netty模块源码,封装了个收发客户端集成一个工具,可以快速调试dubbo接口。源码地址:https://github.com/VIPJoey/doe 极简模式 普通模式 目录结构 mmc-dubbo-api 接口项目,主要用于测试。 mmc-dubbo-provider dubbo提供者项目,主要用于测试。 mmc-dubbo-doe 主项目,实现dubbo接口调试。 deploy 部署文档 功能特性 极简模式:通过dubbo提供的telnet协议收发数据。 普通模式:通过封装netty客户端收发数据。 用例模式:通过缓存数据,方便下一次操作,依赖普通模式。 增加依赖:通过调用maven命令,下载jar包和热加载到系统,主要用来分析接口方法参数,主要作用在普通模式。 依赖列表:通过分析pom文件,展示已经加载的jar包。 其它特性 springboot 整合 redis,支持spring el 表达式。 springboot 整合 thymeleaf。 springboot 整合 logback。 netty rpc 实现原理。 开发环境 jdk 1.8 maven 3.5.3 dubbo 2.6.1 lombok 1.16.20 idea 2018 windows 7 安装步骤 安装jdk 安装maven,并设置好环境变量,仓库目录。 进入mmc-dubbo-api目录,执行mvn clean install命令,省api的jar包。 进入mmc-dubbo-doe目录,执行mvn clean install 命令,在target目录生成dubbo-doe-1.0.0-RELEASE.jar 在F盘(可以任意盘)创建目录F:\app\doe 把dubbo-doe-1.0.0-RELEASE.jar拷贝到F:\app\doe 把deploy目录中的所有文件拷贝到F:\app\doe 如果您电脑安装了git bash,可以在bash窗口运行 ./deploy.sh start,否则如果没有安装git bash,只能打开cmd切换到F:\app\doe目录,然后执行java -jar dubbo-doe-1.0.0-RELEASE.jar --spring.profiles.active=prd 打开浏览器,访问地址:http://localhost:9876/doe/home/index 全剧终
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NeilNiu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值