7.泛化调用
2019-12-16 本文已影响0人
指尖架构141319
1.场景
当A项目没有拿到B项目的接口时,还想用rpc方式调用时
2.操练
客户端中:设置generic="true"
<dubbo:reference id="otherService" interface="com.ucar.service.OtherService" generic="true" />
/**
* 泛化调用
* 当前项目,没有对应的接口---- com.car.service.OtherService
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/other", method = RequestMethod.GET)
@ResponseBody
public String other() {
GenericService genericService = (GenericService)ctx.getBean("otherService");
Object ret = genericService.$invoke("getDetail",new String[]{"java.lang.String"},new Object[]{"name"});
return ret.toString();
}
- otherService:接口名
- getDetail:方法名
- java.lang.String:参数类型
- name:方法实参