首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Spring Boot Ajax GET请求带有数组参数,以列表形式接收:“找不到接口java.util.List的主或默认构造函数”

Spring Boot Ajax GET请求带有数组参数,以列表形式接收:“找不到接口java.util.List的主或默认构造函数”
EN

Stack Overflow用户
提问于 2019-05-09 03:41:22
回答 1查看 1.3K关注 0票数 0

我正在向Spring控制器发送一个带有数组参数的Ajax GET请求,

代码语言:javascript
复制
        $.ajax({
            url: "getChoices",
            dataType: "json",
            type: "get",
            data: {
                'myarg': myarray // JS array of strings, ["a","b","c"]
                                 // Verified to be correct
            },

应接收此参数的控制器方法-- arg名称匹配:

代码语言:javascript
复制
@ResponseBody
@GetMapping("/getChoices")
public List<KeyValueBean> getChoices(List<String> myarg) {
    //...
}

首先,在上面写的方式中,我得到了错误:

代码语言:javascript
复制
[java.lang.IllegalStateException: No primary or default constructor found for interface 
 java.util.List]

Caused by: java.lang.NoSuchMethodException: java.util.List.<init>()
    at java.lang.Class.getConstructor0(Class.java:3082)
    at java.lang.Class.getDeclaredConstructor(Class.java:2178)
    at org.springframework.web.method.annotation.ModelAttributeMethodProcessor.createAttribute(ModelAttributeMethodProcessor.java:216)

然后我试着做了一些调整:

1)将方法签名设为String[],这不是我想要的--我需要一个列表--但为了以防万一,我尝试了一下:

public List<KeyValueBean> getChoices(String[] myarg) {

这进入了方法,但是myarg为空,并且没有正确设置。

2)保留了List<String>,但尝试了阵列周围的JSON.stringify:

JSON.stringify(myarray)

相同的异常:[java.lang.IllegalStateException: No primary or default constructor found for interface java.util.List]

如何在Spring Boot中的Ajax GET请求中传递数组参数?

EN

回答 1

Stack Overflow用户

发布于 2019-05-09 10:15:53

您忘记使用@RequestParam注释您的参数。

代码语言:javascript
复制
@GetMapping("/testList")
public void test(@RequestParam("myarg") List<String> myarg) {
    for (String str : myarg) {
        System.out.println(str);
    }
}

您可以按如下方式向您的端点发出请求,它将正常工作。

代码语言:javascript
复制
http://localhost:8080/testList?myarg=abc,def

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56047946

复制
相关文章

相似问题

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