@RequestParam值转换为小写

时间:2016-03-24 14:40:34

标签: spring spring-mvc spring-boot spring-test-mvc

我是一个包含请求参数的简单控制器,如:

@RequestParam(required = false) String name

现在我也有mockmvc测试包含:

mockMvc.perform(get("/rest/hello/greet")
    .param("name", "Marcel"))

在日志记录中,我看到请求参数似乎正确传递:

MockHttpServletRequest:
  HTTP Method = GET
  Request URI = /rest/hello/greet
   Parameters = {name=[Marcel]}

但是在我的控制器中,请求参数以小写形式出现..

@Get(path = "/greet", produces = APPLICATION_JSON_VALUE)
public ResponseEntity<JSONObject> greet(@RequestParam(required = false) String name) {
    logger.info("greet called with name: {}", name);

打印greet called with name: marcel。 另外 - 显然 - 当将此参数传递给其他服务时,它将以小写形式传递。

这是一个非常简单的Spring Boot应用程序,所以我想知道为什么这个请求参数以小写形式出现。

1 个答案:

答案 0 :(得分:0)

发现某些Converter<String, String>在应用程序上下文中导致此问题的问题。