1

我想在我的两个不同页面中显示相同的记录列表,

第一个控制器和 JSP

public class Model1Controller{

....
....

@ModelAttribute("/myList")
public ModelAndView myMethod(){
   List<String> listOfRecords = new ArrayList<String>();
   listOfRecords.add("1");
   listOfRecords.add("2");

   ModelAndView mv = new ModelAndView();
   mv.addObject("listOfRecords", listOfRecords);

   return mv;
}

....
....
....

}

第一个 JSP

<ul>
<c:forEach items="${listOfRecords}" var="items">
  <li${items}></li>
</c:forEach>
</ul>

第二控制器和 JSP

public class Model1Controller{

....
....

@ModelAttribute("/myList")
public ModelAndView myMethod(){
   List<String> listOfRecords = new ArrayList<String>();
   listOfRecords.add("1");
   listOfRecords.add("2");

   ModelAndView mv = new ModelAndView();
   mv.addObject("listOfRecords", listOfRecords);

   return mv;
}

....
....
....

}

第二个 JSP

<ul>
<c:forEach items="${listOfRecords}" var="items">
  <li${items}></li>
</c:forEach>
</ul>

有什么方法可以在一个地方访问相同的模型属性来访问

提前致谢

4

1 回答 1

0

如果您希望多个控制器可以使用相同的列表,请将其放在会话或应用程序上下文中。哪个更合适。该模型是您想要向 Web 视图公开的任何内容的请求的一部分,因此它不是为跨多个请求或控制器使用而设计的。

http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/web/bind/annotation/ModelAttribute.html

于 2012-07-15T21:05:53.283 回答