java - Spring mvc 形式一对多形式

标签 java spring jsp spring-mvc spring-form

我有 3 个实体用户、部门和地址。用户可以有多个地址。现在我对为这个用例构建表单有疑问。

我可以直接访问部门,因为它是对象。但我不知道如何引用地址属性,因为它是一个集合。

class Users
{
  private int id;
  private String name;
  private Department dept;

  @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
    @JoinColumn(name = "userId", nullable = false)
    private Set<Address> addresses = new HashSet<Address>(0);

  //Getters and setters
}

MyForm.jsp

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head>
    <title>Spring 3 MVC Series - Contact Manager</title>
</head>
<body>
<h2>Contact Manager</h2>
<form:form method="post" commandName="userObject" action="addPerson.html">

    <table>
    <tr>
        <td><form:label path="name">Name</form:label></td>
        <td><form:input path="name" /></td> 
    </tr>
    <tr>
        <td><form:label path="userObject.dept.deptName">Department Name</form:label></td>
        <td><form:input path="userObject.dept.deptName" /></td>
    </tr>
    <tr>
        <td><form:label path="userObject.addresses.street">Street Address</form:label></td>
        <td><form:input path="userObject.addresses.street" /></td>
    </tr>

    <tr>
        <td colspan="2">
            <input type="submit" value="Add Contact"/>
        </td>
    </tr>
</table>  

</form:form>

如何使用对象访问我的 jsp 表单中的地址属性。我在 userObject.addresses.street 的 jsp 中遇到问题

最佳答案

我会使用 jSTL 标签库:

 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

然后使用foreach

并做一些类似的事情:

<c:forEach var="item" items="${userObject.addresses}">
  ${item.street}
</c:forEach>

关于java - Spring mvc 形式一对多形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24035910/

相关文章:

java - 垃圾收集器不会立即收集完成的线程

java - 在运行时延迟初始化 spring 安全性 + 重新加载 spring 安全性配置

java - 将图像存储在 mysql 中并检索它

mysql - 如何在mysql数据库中插入值

java - com.sun.mail.smtp.SMTPSendFailedException : 530 5. 7.0 必须先发出 STARTTLS 命令

java - 如何使用 session 外观从远程客户端访问实体 bean

java - 无法在方法中使用 getOutputStream 和 getInputStream

java - spring处理POST数据-注释正确的 Controller

java - 将参数注入(inject) spring-data 动态查询构建方法

java - jsp中的方法声明和java文件中的方法声明哪个性能更好