本文主要有以下内容:
-
SpringBoot 如何接收HTTP Get请求中的数组参数?
-
[java.lang.IllegalStateException: No primary or default constructor found for interface java.util.List] 报错如何解决?
一、SpringBoot2.2.4接收数组参数
需要配合使用 @RequestParam注解
注: 如果你使用 Domain对象,则没有这个限制。
@GetMapping("/api/foos")
@ResponseBody
public String getFoos(@RequestParam List<String> id) {
return "IDs are " + id;
}
验证结果:
http://localhost:8080/api/foos?id=1,2,3
----
IDs are [1,2,3]
参考连接:
二、SpringBoot接收数组参数报错
[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)
解决方案:
原因就是没有使用 @RequestParam注解
报错参考链接:
SpingBoot参数接收List数组报错