1、问题描述
在SpringMvc项目中当GET请求参数出现小数点时,如{number}为2.30,后台通过@PathVariable来获取number等于2.0。会丢失部分数据。
代码如下:
@RequestMapping(value = "/pay/{number}", method = RequestMethod.GET)
public ResponseEntity pay(HttpServletRequest request,@PathVariable("number") BigDecimal number){
return null;
}
2、问题解决
在@RequestMapping的value中使用SpEL来表示,value中的{number}换成{number:.+}。
@RequestMapping(value = "/pay/{number:.+}", method = RequestMethod.GET)
public ResponseEntity pay(HttpServletRequest request,@PathVariable("number") BigDecimal number){
return null;
}