dubbo泛化调用
引用官方定义:
泛化调用主要用于消费端没有 API 接口的情况;不需要引入接口 jar 包,而是直接通过 GenericService 接口来发起服务调用,参数及返回值中的所有 POJO 均用 Map 表示。泛化调用对于服务端无需关注,按正常服务进行暴露即可。
GenericService 这个接口只有一个方法,名为 $invoke,它接受三个参数,分别为方法名、方法参数类型数组和参数值数组; 对于方法参数类型数组 如果是基本类型,如 int 或 long,可以使用 int.class.getName()获取其类型; 如果是基本类型数组,如 int[],则可以使用 int[].class.getName(); 如果是 POJO,则直接使用全类名,如 com.alibaba.dubbo.samples.generic.api.Params。
推荐两篇文章讲的很详细:
1、官方解释: dubbo的泛化调用