什么是<spring:bind>?何时使用,何时不使用?

Wel*_*ngr 14 java forms spring

我在春季提交表单数据时遇到问题.<spring:bind>似乎是解决方案的一部分.在这里看到我的完整问题 .

这里找到的BindTag文档对我来说并不清楚.<spring:bind>在某些情况下,为什么需要提交数据,而在大多数情况下不需要?

<spring:bind>为了使表单正常运行,必须使用哪些典型情况?

Roc*_*que 5

<spring:bind>当您想从输入表单中解析多个对象时,您会发现该标签很有用。这是Spring的文档(http://docs.spring.io/spring/docs/1.2.6/taglib/tag/BindTag.html)的修改示例:

<form method="post">
        ## now bind on the name of the company
        <spring:bind path="company.name">
        ## render a form field, containing the value and the expression
        Name: <input 
            type="text" 
            value="<c:out value="${status.value}"/>"
            name="<c:out value="${status.expression}"/>">
        </spring:bind>

<spring:bind path="address.street">
    Name: <input 
        type="text"
        value="<c:out value="${status.value}"/>"
        name="<c:out value="${status.expression}"/>">
</spring:bind>
<input type="submit">
</form> 
Run Code Online (Sandbox Code Playgroud)


DCK*_*ing 1

虽然我自己从来没有使用过这个标签,但我对文档的理解是这样的。标签将为您提供有关表单属性与 bean 的绑定状态的信息。例如在:

<form:form modelAttribute="employee">
    <form:input path="name"/>
    <spring:bind path="name"/>
    <spring:bind path="employee"/>
</form:form>
Run Code Online (Sandbox Code Playgroud)

该标记将显示(或通过 BindStatus 对象公开)name 属性发生的所有错误(第一种情况)以及 Employee 实体及其属性上的所有错误(第二种情况)。我不确定这个标签与提交数据的成功有什么关系,但它被用作信息工具。