gpt4 book ai didi

spring - 在 Spring 中,如何将整数列表绑定(bind)到 RequestParam?

转载 作者:行者123 更新时间:2023-12-01 18:02:00 25 4
gpt4 key购买 nike

我有来自客户端的正在发送的参数,例如

ids[] = 11
ids[] = 12
ids[] = 21

在服务器端,我有一个具有以下方法的 Spring Controller :

@RequestMapping("/delete.x")
public @ResponseBody Map<String, Object> delete(HttpServletRequest request, @RequestParam("ids[]") List<Integer> ids) {

当我尝试按如下方式迭代 id 集合时:

for (Integer id : ids) {

我收到如下异常:

java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer

Spring 是否将 ids 类型更改为 List ?不管我怎么想,如何避免这个问题并将 id 以整数形式存储在列表中?

最佳答案

你面临的问题是java有类型删除。所以在运行时a List<Integer>相当于 List<String> spring 无法知道你想要将整数放入你的列表中。

解决方法可能是使用整数数组而不是整数列表。

@RequestMapping("/delete.x")
public @ResponseBody Map<String, Object> delete(HttpServletRequest request,
@RequestParam("ids[]") Integer[] ids) {

关于spring - 在 Spring 中,如何将整数列表绑定(bind)到 RequestParam?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14324881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com