1

我正在使用 Spring,我需要使用 GET 方法传递一个包含枚举值的列表。是否可以将 @QueryParam 用于 List ?如果是,那么我们如何以及如何通过 url 发送它。

我使用@QueryParam List enumValues 并通过 url 作为 enumValues=value1&enumVales=value2 发送数据。

但我收到以下错误:

org.springframework.beans.BeanInstantiationException:无法实例化[java.util.List]:指定的类是一个接口

请帮忙!

4

1 回答 1

1

您正面临这个问题,因为您正在使用@QueryParam带有 spring 的 JAX-RS 注释。Spring 不符合 JAX-RS 框架,它们是完全不同的两个 MVC 框架。如果你更喜欢使用 Spring annotation @RequestParam,配置很简单,它会为你创建 Enum 列表:

  • 您的查询参数将如下所示:enumValues=value1&enumVales=value2
  • 您的春季 RequestMapping 将如下所示:@RequestParam(value="enumValues")List<EnumValues> enumValues
于 2018-07-14T17:34:33.280 回答