将表单中的对象传递给 JSP

问题描述 投票:0回答:1

我遇到了以下问题,我有两个班级Student和Faculty,Student有一个Faculty字段。问题是:我怎样才能将这种形式的对象准确地传递给 Student 类对象的教师字段?

P。 S.模型属性“faculties”包含所有类型faculties的对象列表。

    <%--@elvariable id="student" type="org.oskirko.spring.Models.Entities.Student"--%>
    <form:form action="/add_new_student" modelAttribute="student">
        Name: <form:input path="name"/>
        <br><br>
        Surname: <form:input path="surname"/>
        <br><br>
        Avg. grade <form:input path="averageGrade"/>
        <br><br>
        Faculty
        <form:select path="faculty">
            <%--@elvariable id="faculties" type="java.util.List"--%>
            <form:options items="${faculties}" itemLabel="name" itemValue="id"/>
        </form:select>

        <input type="submit" value="Add">
    </form:form>

我最初尝试简单地传递教师姓名列表,但如果我从 select 中选择一行,则会使用我选择的教师名称创建一个新对象(据我了解,这是由于参数绑定),并且我不需要创建新对象,但对于学生来说,现有的师资力量得到了巩固。

java spring forms jsp entities
1个回答
0
投票

您将 itemValue 定义为

id
,因此似乎将相应的选择路径更改为
faculty.id
更合理。代码片段如下。

<form:select path="faculty.id">
    <%--@elvariable id="faculties" type="java.util.List"--%>
    <form:options items="${faculties}" itemLabel="name" itemValue="id"/>
</form:select>
© www.soinside.com 2019 - 2024. All rights reserved.