在spring-mvc中处理多个具有相同名称的<input>

zon*_*ono 6 html spring jsp http spring-mvc

请看下面的代码.显示四个文本框.

如果我在前面的文本框中输入"1"和"2",它们就像我预期的那样以逗号分隔的"1,2"绑定.

但是,如果我输入"2001/01/01"和"2001/01/02"在其他两个盒子中被绑定"2001/01/01"."2001/01/01"只是令人惊讶地结合在一起.第一个参数似乎优先绑定.

我想知道在哪里定义了规范(HTTP或SpringMVC或......?),以便深入和准确地理解.有人能帮我吗?

Form
public class SampleForm {

    private String name;

    private Date date;

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

JSP
<form:form modelAttribute="form" method="post">
    <form:input path="name" />
    <form:input path="name" />
    <form:input path="date" />
    <form:input path="date" />
    <p>
        <input type="submit" name="register" value="register" />
    </p>
</form:form>
Run Code Online (Sandbox Code Playgroud)

Boz*_*zho 5

这是合乎逻辑的.可以String通过逗号分隔将多个字符串表示为一个.多个Date对象不能表示为一个Date对象.

您可以尝试使用String[]Date[]不是.