首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用list模板更新上限列表中的值?

如何使用list模板更新上限列表中的值?
EN

Stack Overflow用户
提问于 2021-07-01 14:16:39
回答 2查看 255关注 0票数 0

1.有控制器的json列表和我所使用的数据

代码语言:javascript
运行
复制
[
  {
    "id" : 1,
    "cardname" : "visa gold",
    "cardnumber": "1254***548**54",
    "status" : true,
    "opposed" : false,
    "issueDate" : "21-06-2021",
    "cardbalance" : 200000,
    "validitydate" : "25-06-2021",
    "experationdate" : "30-06-2023",
    "onlinepayment" : true,
    "contactless" : true,
    "withdrawal" : false,
    "ceiling" : [{
      "maxValue" : 10000,
      "minValue" : 500,
      "value" : 100000,
      "currency" : "MAD",
      "type" : "paiment"
    }]

2.这是我的code控制器代码。

代码语言:javascript
运行
复制
    @PutMapping("/update/{id}")
    public Ceiling update(@RequestParam Integer id, Card card){
        ParameterizedTypeReference<List<Card>> responseType = new ParameterizedTypeReference<List<Card>>() {};
        ResponseEntity<List<Card>> resp = restTemplate.exchange(GET_CARD, HttpMethod.GET, resp, responseType);
        List<Card> list = resp.getBody();
        return ;
    }

问题是put不能工作列表上限中的值,他们给出了错误:不存在已解决的org.springframework.web.bind.MissingServletRequestParameterException:必需的整数参数'id‘

EN

Stack Overflow用户

回答已采纳

发布于 2021-07-01 15:27:18

错误信息,

不存在org.springframework.web.bind.MissingServletRequestParameterException:解析的

必需的整数参数'id‘

它表示id请求参数在URL中不存在。

如果将id作为请求参数传递,则URL应该类似于/update?id=12345,控制器方法应该定义如下:

代码语言:javascript
运行
复制
@PutMapping("/update")
public Card update(@RequestParam(value="id") Integer id, Card card){

    RestTemplate restTemplate = new RestTemplate();
    HttpEntity<Card> request = new HttpEntity<>(card);
    ResponseEntity<Card> response = restTemplate.exchange(GET_CARD, HttpMethod.GET, request, Card.class);
    return response.getBody(); 
}

注意:您没有提到任何关于CardCeiling实体之间关系的信息。因此,假设GET_CARD端点正在更新我们正在传递的REST调用的card,并使用响应返回更新的Card,我已经修改了上面的方法主体。

如果您需要将id作为路径变量发送,那么URL应该类似于update/{id},控制器方法应该是,

代码语言:javascript
运行
复制
@PutMapping("/update/{id}")
public Card update(@PathVariable("id") Integer id, Card card){
    
    RestTemplate restTemplate = new RestTemplate();
    HttpEntity<Card> request = new HttpEntity<>(card);
    ResponseEntity<Card> response = restTemplate.exchange(GET_CARD, HttpMethod.GET, request, Card.class);
    return response.getBody(); 
}
票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68211862

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档