JavaSpring表单标记问题

JavaSpring表单标记问题,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,我正在使用jsp,这是我的contacts.jsp <%@taglib uri="http://www.springframework.org/tags/form" prefix="form" %> <html> <head> <title>Spring 3.0 MVC series: Contact manager</title> </head> <body> <h2>Contact Man

我正在使用jsp,这是我的contacts.jsp

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<html>
<head>
    <title>Spring 3.0 MVC series: Contact manager</title>
</head>
<body>
<h2>Contact Manager</h2>
<form:form method="post" action="addContact.html">

    <table>
        <tr>
            <td><form:label path="firstName">First Name</form:label></td> // LABEL
            <td><form:input path="firstName" /></td>
        </tr>
        <tr>
            <td><form:label path="lastName">Last Name</form:label></td>
            <td><form:input path="lastName" /></td>
        </tr>
        <tr>
            <td><form:label path="lastName">Email</form:label></td>
            <td><form:input path="email" /></td>
        </tr>
        <tr>
            <td><form:label path="lastName">Telephone</form:label></td>
            <td><form:input path="telephone" /></td>
        </tr>
        <tr>
            <td colspan="2">
                <input type="submit" value="Add Contact"/>
            </td>
        </tr>
    </table>  

</form:form>
</body>
</html>

Spring 3.0 MVC系列:联系人管理器
联络经理
名字//标签
姓
电子邮件
电话
我的问题是,当我将
form:label path=“firstName”
更改为
form:label path=“firstName”
时,为什么tomcat开始抛出错误?模型不需要输入路径吗?因为输入路径中的值就是它将使用的值吗

编辑:


我是否应该使用
表单:label标签
,为什么要使用它?

这是因为
firstName
要么按字面意思使用,要么被翻译成方法
getFirstName()

无论哪种方式,在执行查找时,大小写都很重要


对于您是否需要标签中的
路径的问题:如果您提供了路径,那么标签将知道它属于哪个输入。在HTML中,这允许您单击标签并使输入字段获得焦点。我假设代码的输出HTML如下所示:

<tr>
  <td><label for="firstName"></td>
  <td><input type="text" id="firstName"></td>
</tr>


但是我应该使用
form:label
标记吗,不管它是否存在?我想知道,为什么我应该使用
form:label
标记,而它不在任何地方使用?我假设输出是
,所以如果你不想要它,就不要使用它。我不太确定另一个选择是什么?你要么想要一个标签,要么不想要。这不是必需的。是的,我可以有标签,但我不能,但我最初的问题是:为什么我的标签需要路径?对不起,但不清楚这是你最初的问题。如果提供路径,则标签将知道它属于哪个输入。在HTML中,这允许您单击标签并使输入字段获得焦点。我假设代码的输出HTML如下:
使用标签的价值在于,用户可以通过标签的“for”属性(通过标签的“for”属性)单击标签来选择标签所附着的控件。form:label标签需要一个path属性,以便生成“for”标签标签的属性。应始终使用标签;它们使屏幕阅读器和其他替代用户代理更容易访问您的代码。