基于Feign传输对象无法接收参数的问题

网友投稿 557 2022-10-20

基于Feign传输对象无法接收参数的问题

基于Feign传输对象无法接收参数的问题

目录Feign传输对象无法接收参数Feign参数传递问题记录API层接口层

Feign传输对象无法接收参数

今天碰到问题,当我们使用对象作为参数传输时,无法获得其参数值。

@RequestMapping(value = "/oauth/client/save")

Integer saveClient(@RequestBody ClientInfo clientInfo);

发现接口内定义的@RequestBody注解是无法继承到实现中的,所以在impl中同样需要添加上@RequestBody注解。

Feign参数传递问题记录

对象传递

@RequestBody(required = false)

不支持多对象传递,至少我目前发现是这样的,如有错误或者改进的方法请提出

API层

@FeignClient(value = "transaction-feign")

public interface TransactionApiService {

/**

* 交易流水查询 可分页

*

* @param param

* @param pageNum

* @param pageSize

* @return

*/

@RequestMapping(value = "/dealflow/list", method = RequestMethod.POST)

jsonResultDO dealFlowList(@RequestBody(required = false) DealFlowDo param

, @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum

, @RequestParam(value = "pageSize", defaultValue =http:// "20") Integer pageSize);

}

接口层

/**

* 交易流水查询 可分页

* @return JsonResultDO

*/

@RequestMapping(value = "/dealflow/list", method = RequestMethod.POST)

public Page dealFlowList(@RequestBody(required = false) DealFlowDo param

, @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum

, @RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize

, @RequestParam(value = "userId") Long userId){

JsonResultDO resultDO = new JsonResultDO();

Page page = (Page )dealFlowService.queryDealFlowList(userId, param, pageNum, pageSize);

return page;

}

单个或多个参数传递

@RequestParam/@PathVariable/***

/**

* 根据商户号获取商户信息

*

* @param merNo

* @return

*/

@RequestMapping(value = "/merchant/{merNo}", method = RequestMethod.GET)

String getMerchantByMerNo(@PathVariable("merNo") String merNo);

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:JVM源码分析之不可控的堆外内存
下一篇:企业级 J2EE 开源框架:bboss
相关文章

 发表评论

暂时没有评论,来抢沙发吧~