相关疑难解决方法(0)

如何防止参数绑定解释Spring 3.0.5中的逗号?

考虑以下控制器方法:

@RequestMapping(value = "/test", method = RequestMethod.GET)
public void test(@RequestParam(value = "fq", required = false) String[] filterQuery) {
    logger.debug(fq = " + StringUtils.join(filterQuery, "|"));
}
Run Code Online (Sandbox Code Playgroud)

以下是不同fq组合的输出:

  1. /test?fq=foo 结果是 fq = foo
  2. /test?fq=foo&fq=bar 结果是 fq = foo|bar
  3. /test?fq=foo,bar 结果是 fq = foo|bar
  4. /test?fq=foo,bar&fq=bash 结果是 fq = foo,bar|bash
  5. /test?fq=foo,bar&fq= 结果是 fq = foo,bar|

例3是问题.我希望(想要/需要)它输出fq = foo,bar.

我已经尝试用逗号来逃避逗号\并使用其他%3C工作.

如果我看一下HttpServletRequest对象的版本:

String[] fqs = request.getParameterValues("fq");
logger.debug(fqs = " + StringUtils.join(fqs, "|"));
Run Code Online (Sandbox Code Playgroud)

它打印预期的输出:fqs = foo,bar …

java data-binding spring spring-mvc

53
推荐指数
3
解决办法
2万
查看次数

标签 统计

data-binding ×1

java ×1

spring ×1

spring-mvc ×1