使用 FeignClient 进行微服务交互(微服务接口互相调用)
先写一个公共方法:public String getSettingValue(String name) {Map<String, Object> map = (Map) settingClient.getByName(name).getData();return (String) map.get("value");}然后...
·
先写一个公共方法:
public String getSettingValue(String name) {
Map<String, Object> map = (Map) settingClient.getByName(name).getData();
return (String) map.get("value");
}
然后写一个Feign调用
@FeignClient(value="qiang-admin")
public interface SettingClient {
@RequestMapping(value="/setting/getSetting/{name}",method = RequestMethod.GET)
public ReturnMsg getByName(@PathVariable("name") String name);
}
@FeignClient注解用于指定从哪个服务中调用功能 ,注意 里面的名称与被调用的服务
名保持一致,并且不能包含下划线。
@RequestMapping注解用于对被调用的微服务进行地址映射。注意 @PathVariable注
解一定要指定参数名称,否则出错。
@PathVariable:接口参数
被Feign调用的方法如下:
@RequestMapping(value="/getSetting/{name}",method = RequestMethod.GET)
public ReturnMsg getByName(@PathVariable String name){
Setting condition = new Setting();
condition.setName(name);
ReturnMsg returnMsg = new ReturnMsg<>();
Setting setting = settingService.findByCondition(condition);
returnMsg.setCode(ReturnIntCode.SUCCESSS_CODE);
returnMsg.setData(setting);
return returnMsg;
}
更多推荐
已为社区贡献1条内容
所有评论(0)