java - 在 @RequestParam 中绑定(bind)列表包含方括号

标签 java spring spring-mvc data-binding collections

当我将列表 ("EN", "IT") 作为 @RequestParam 传递时,它将其绑定(bind)为 (["EN", "IT”])。因此第一个元素是 (["EN),第二个元素是 "IT"]

你如何解释这一点?

@RequestMapping(value = "/countRequests", method = RequestMethod.GET)
public ResponseEntity<BigInteger> getCountRequests(
   @RequestParam("languages") List<String> languages)

最佳答案

您不需要使用 [] 语法来传递数组(或列表)。

尝试以这种方式执行您的请求:

/countRequests?languages=EN,IT

这样 Spring MVC 应该正确绑定(bind)你的参数。尝试一下。

另一种方法是使用以下语法:

/countRequests?languages[]=EN&languages[]=IT

关于java - 在 @RequestParam 中绑定(bind)列表包含方括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43660057/

相关文章:

java - Spring框架连接多个数据库xml JAVA

spring - 使用 ResponseEntity<t>

java - Spring Boot 不会替换 Spring Tool Suite 版本 : 3. 8.4.RELEASE 中的系统变量 {user.home}

Spring MVC 在 session 中保存用户数据

java - 我该如何阻止这个整数溢出?

java - 什么是在我的部署中设置 Cache-Control no-cache, no-store?

java - 当我从 native Java 方法抛出 C++ 异常时会发生什么?

java - 从 Gradle 运行 PMD 任务时出现 NoClassDefFoundError

java - 错误由: java. lang.ClassNotFoundException : org. springframework.security.context.DelegatingApplicationListener引起

java - Spring 或 App-Server escape html 无法正常工作 JAVA MVC