尝试使用字符串文字
value作为name属性,而不是用EL解析它
<spring:bind path="value"> <input type="text" name="value" value="${value}"/></spring:bind>同样,将字段值移动到新对象中。目前,我不认为代码正在使用控制器中的字段或控制器中的getter。
public class MyForm(){ @NumberFormat(style = Style.CURRENCY) private Double value = 50.00; @ModelAttribute("value") @NumberFormat(style = Style.CURRENCY) public Double getValue() { return value; }}然后将对象添加到控制器中的模型中:
@RequestMapping(method = RequestMethod.GET)public ModelAndView loadForm(@ModelAttribute("user") User user) { ModelAndView instance modelAndView.addObject("myForm", new MyForm()); return modelAndView;}然后通过jsp访问:
<spring:bind path="myForm.value"> <input type="text" name="${status.expression}" value="${status.value}"/></spring:bind><spring:bind path="myForm.value"> ${status.value}</spring:bind>目前,代码的主要问题是它没有使用字段/访问器,只是在模型中放置了一个值,而没有使用任何带注释的字段/方法。
参考:http : //www.captaindebug.com/2011/08/using-
spring-3-numberformat-
annotation.html#.UOAO_3fghvA



