Spring MVC spring:bind标签如何工作,status.expression和status.value的含义是什么?


问题内容

让我们讨论以下示例:

<spring:bind path="user.userName">
    <input type="text" name="${status.expression}" value="${status.value}"/>
    <span class="fieldError">${status.errorMessage}</span>
</spring:bind>

呈现此视图摘要后,$ {status.expression}和$ {status.value}会被评估为什么?这些价值从何而来?


问题答案:

有关状态变量含义的说明,请参见此链接

  • status.expression :用于检索bean或属性的表达式
  • status.value :bean或属性的实际值(使用已注册的PropertyEditor进行转换)
  • status.errorMessages :验证产生的错误消息数组

绑定完成后,将评估状态对象。

还请记住,Spring 2.0引入了新的表单标签,可能更适合您的需求。