Java Spring3.xMVC控制器:向请求/会话添加属性

Java Spring3.xMVC控制器:向请求/会话添加属性,java,spring,jsp,spring-mvc,spring-3,Java,Spring,Jsp,Spring Mvc,Spring 3,我是Spring新手,有一个与Spring3MVC控制器类相关的基本问题 我的控制器中有以下方法: @RequestMapping("/index") public String listContacts(Map<String, Object> map) { map.put("contacts", new EmployeeForm()); map.put("contactList", employeeService.listEmployee()); retur

我是Spring新手,有一个与Spring3MVC控制器类相关的基本问题

我的控制器中有以下方法:

@RequestMapping("/index")
public String listContacts(Map<String, Object> map) {
    map.put("contacts", new EmployeeForm());
    map.put("contactList", employeeService.listEmployee());
    return "contacts";
}
我的困惑:

我没有在我的控制器类的会话或请求属性中添加
contactList
,那么如何使用
${contactList}
在JSP文件中访问相同的属性呢


请澄清。

控制器处理程序方法中的
Map
参数有效地用作模型属性的映射

在呈现视图之前,模型属性(通常)添加为
HttpServletRequest
属性

文档中对此进行了解释

以下是受支持的方法参数:

  • java.util.Map
    /
    org.springframework.ui.Model
    /
    org.springframework.ui.ModelMap
    用于丰富 向web视图公开

控制器处理程序方法中的
Map
参数有效地用作模型属性的映射

在呈现视图之前,模型属性(通常)添加为
HttpServletRequest
属性

文档中对此进行了解释

以下是受支持的方法参数:

  • java.util.Map
    /
    org.springframework.ui.Model
    /
    org.springframework.ui.ModelMap
    用于丰富 向web视图公开

Spring为您提供了一个映射,或者基本上是一个视图模型,您可以将其填充到控制器处理程序方法中。处理程序完成后,Spring将您添加到映射中的任何内容添加到jsp上下文中,以便它们可以作为普通上下文变量访问。我相信这些变量被添加到“request”范围中,以便JSP代码访问,但我不确定,因为它可能是“page”范围


因为处理程序和视图呈现在同一个请求中进行处理(由Spring管理),所以不需要在会话中存储任何模型信息

Spring为您提供了一个映射,或者基本上是一个视图模型,您可以将其填充到控制器处理程序方法中。处理程序完成后,Spring将您添加到映射中的任何内容添加到jsp上下文中,以便它们可以作为普通上下文变量访问。我相信这些变量被添加到“request”范围中,以便JSP代码访问,但我不确定,因为它可能是“page”范围


因为处理程序和视图呈现在同一个请求中进行处理(由Spring管理),所以不需要在会话中存储任何模型信息

@user182944哪个部分?您添加到
映射中的任何内容都将作为请求属性添加。@user182944哪个部分?添加到
映射中的任何内容都将作为请求属性添加。
<c:forEach items="${contactList}" var="contact">
<tr>
    <td>${contact.lastname}, ${contact.firstname} </td>
    <td>${contact.email}</td>
    <td>${contact.telephone}</td>
    <td><a href="delete/${contact.id}">delete</a></td>
</tr>
</c:forEach>