java rest风格传参_如何用RestTemplate同时传递一个Java对象和基本类型的参数?

我用RestTemplate想两个参数,一个是自己写的Java类,一个是基本类型

请求的Controller@RequestMapping("/buy")

public int buy(@RequestBody GoodsDetail goodsDetail,Integer buyCount){

goodsDetail.setRemaining(goodsDetail.getRemaining() - buyCount);

int num = goodsDetailMapper.updateByPrimaryKey(goodsDetail);

return num;

}

用getForObject:Map map = new HashMap<>();

map.put("goodsDetail",goodsDetail);

map.put("buyCount",buyCount);

int num = restTemplate.getForObject("http://localhost:8088/shop-buy/buy?goodsDetail={goodsDetail}&buyCount={buyCount}", int.class, map);

报400 null1c58462856a0aafc7aa1dcde55015be0.png

用postForObject:MultiValueMap multiValueMap = new LinkedMultiValueMap<>();

multiValueMap.add("goodsDetail",goodsDetail);

multiValueMap.add("buyCount",buyCount);

int num = restTemplate.postForObject("http://localhost:8088/shop-buy/buy", multiValueMap, int.class);

报415 null efa9b03d931e1dc944475fd4c4be848d.png

求救,要疯掉了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值