Dubbo 中telnet命令的使用-Dubbo Invoke

Dubbo 中telnet命令的使用-Dubbo Invoke

假设我们配置的 dubbo.protocol.port=19951

  1. telnet连接服务

    命令:telnet ip port eg: telnet localhost 19951

    image-20210419151308458

  2. 查看服务列表 命令: ls

  3. 查看服务中的接口方法 命令: ls xxx.xxxService

    ls

    显示服务列表。

    ls -l

    显示服务详细信息列表。

    ls XxxService

    显示服务的方法列表。

    ls -l XxxService

    显示服务的方法详细信息列表。

  4. 调用服务接口 invoke

    如果注入的是json那就直接传入json串就ok了,如果是基础数据类型,也可以分别对应参数直接传
    invoke XxxService.xxxMethod({“prop”: “value”}, 1, “1”)
    如果注入的参数是对象(com.lijun.User。具体的方法名: saveUser(User user)

    public class User implements Serializable {
        private String name;
        private Integer age;
        private String remark;
        // getter & setter
    }
    

    我们也是按照json的格式传,只不过在每个对象后都需要指定具体的这个对象具体所属的类型(key 为 class)

    invoke XxxService.saveUser({“name”:“张三”,“age”:18,“class”:“com.lijun.User”})

    dubbo官网invoke文档:

    invoke

    1. invoke XxxService.xxxMethod(1234, “abcd”, {“prop” : “value”}): 调用服务的方法
    2. invoke com.xxx.XxxService.XxxService.xxxMethod(1234, “abcd”, {“prop” : “value”}): 调用全路径服务的方法
    3. invoke xxxMethod(1234, “abcd”, {“prop” : “value”}): 调用服务的方法(自动查找包含此方法的服务)
    4. invoke xxxMethod({“name”:“zhangsan”,“age”:12,“class”:“org.apache.dubbo.qos.legacy.service.Person”}) :当有参数重载,或者类型转换失败的时候,可以通过增加class属性指定需要转换类
    5. 当参数为Map<Integer,T>,key的类型为Integer时,建议指定类型。例如invoke com.xxx.xxxApiService({“3”:0.123, “class”:“java.util.HashMap”})
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值