Spring MVC如何转换@RequestParam值?

时间:2015-04-22 17:05:24

标签: java spring spring-mvc annotations

我是Spring框架的新手,作为一种症状,我希望尽可能简单地采用它的Web MVC部分,所以我使用注释函数来处理Spring。在过去,我用过:
int value = Integer.valueOf(request.getParameter("numberValue"))从参数中提取值 - 显式转换getParameter()返回的字符串。有用的是,我注意到当我使用Spring的术语时:
{{ 1}}
转换是自动处理的。这很好,但对我来说是一个“黑匣子”。我尝试在这里或Spring文档中查看问题,但所有这些信息都涉及对象或格式问题的自定义转换(如Converter)。我想知道的是Spring默认如何处理@RequestParameter("numberValue") int numVal的原始类型转换。

1 个答案:

答案 0 :(得分:10)

  

我注意到当我使用Spring的术语时:   @RequestParameter(" numberValue")int numVal处理转换   自动。

您正在寻找类型转换

根据此link

提供的春季文档
  

从请求中提取的基于字符串的值,包括请求   参数,路径变量,请求标头和cookie值可以   需要转换为方法参数的目标类型或   字段(例如,将请求参数绑定到字段中的字段)   @ModelAttribute参数)他们被绑定了。如果目标类型不是   String,Spring自动转换为适当的类型。所有   支持简单类型,如int,long,Date等。