原文链接:springMVC3学习(二)--ModelAndView对象

当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherServlet。

因此,经常需要在控制器中构造ModelAndView对象。ModelAndView类提供了几个重载的构造器和一些方便的方法,

让你可以根据自己的喜好来构造ModelAndView对象。这些构造器和方法以类似的方式支持视图名称和视图对象。

当你只有一个模型属性要返回时,可以在构造器中指定该属性来构造ModelAndView对象

在上篇的基础上,只修改Login类

  1. package com.itmyhome;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6. import org.springframework.stereotype.Controller;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.servlet.ModelAndView;
  9. @Controller
  10. public class Login {
  11. @RequestMapping(value="login")
  12. public ModelAndView login(){
  13. ModelAndView mav = new ModelAndView();
  14. mav.setViewName("welcome"); //返回的文件名
  15. mav.addObject("message","hello kitty");
  16. //List
  17. List<String> list = new ArrayList<String>();
  18. list.add("java");
  19. list.add("c++");
  20. list.add("oracle");
  21. mav.addObject("bookList", list);
  22. //Map
  23. Map<String,String> map = new HashMap<String,String>();
  24. map.put("zhangsan", "北京");
  25. map.put("lisi", "上海");
  26. map.put("wangwu", "深圳");
  27. mav.addObject("map",map);
  28. return mav;
  29. }
  30. }

亦或如下方法来构建你的ModelAndView对象

  1. @RequestMapping(value="logout")
  2. public ModelAndView logout(){
  3. String message = "欢迎下次光临!";
  4. return new ModelAndView("logout","message",message);
  5. }

然后修改welcome.jsp输出数据

遍历集合可使用jstl表达式,需在jsp中引入头文件

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

lib下导入jstl.jar和standard.jar

首先这两个jar在哪里可以找到,当然可以在网上下载。

另外在tomcat下面就有,在\webapps\examples\WEB-INF\lib

前提是你还没有把webapps下面的一些无用项目删掉。

 

welcome.jsp

  1. <body>
  2. <!-- 输出普通字符 -->
  3. ${message } <br/>
  4. <!-- 输出List -->
  5. <p>书籍列表</p>
  6. <c:forEach items="${bookList}" var="node">
  7. <c:out value="${node}"></c:out>
  8. </c:forEach>
  9. <br/>
  10. <br/>
  11. <!-- 输出Map -->
  12. <c:forEach items="${map}" var="node">
  13. 姓名:<c:out value="${node.key}"></c:out>
  14. 住址:<c:out value="${node.value}"></c:out>
  15. <br/>
  16. </c:forEach>
  17. </body>
 

结果如图:

springMVC3学习--ModelAndView对象(转)的更多相关文章

  1. springMVC3学习(二)--ModelAndView对象

    当控制器处理完请求时,一般会将包括视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherServlet. 因此,常常须要在控制器中构造ModelAndView对象. ...

  2. springMVC3学习(三)--handlerMapping和handlerAdapter

    基本结构和 springMVC3学习(一)--框架搭建 差不多,这里不再用Annotation注解的方式 以下只说明需要修改的部分: 1.在Spring配置文件中配置HandlerMapping.Ha ...

  3. JavaScript学习04 对象

    JavaScript学习04 对象 默认对象 日期对象Date, 格式:日期对象名称=new Date([日期参数]) 日期参数: 1.省略(最常用): 2.英文-数值格式:月 日,公元年 [时:分: ...

  4. Javascript学习4 - 对象和数组

    原文:Javascript学习4 - 对象和数组 在Javascript中,对象和数组是两种基本的数据类型,而且它们也是最重要的两种数据类型. 对象是已命名的值的一个集合,而数组是一种特殊对象,它就像 ...

  5. ModelAndView对象

    ModelAndView属性中两个最重要的属性是model和view. view即视图,保存的是视图信息. model即模型,以<K,V>形式保存模型数据,上图可以看到是MdelMap类型 ...

  6. SpringMVC中ModelAndView对象与“视图解析器”

    摘要: spring MVC这个环境中,Spring MVC会依据controller(或者你叫它handler)中处理方法的返回值,进行解析,解析之后提供一个视图,作为响应. 标注了@Control ...

  7. Spring.NET依赖注入框架学习-- 泛型对象的创建和使用

    Spring.NET依赖注入框架学习-- 泛型对象的创建和使用 泛型对象的创建方法和普通对象是一样的. 通过构造器创建泛型对象 下面是一个泛型类的代码: namespace GenericsPlay ...

  8. spring MVC之构造ModelAndView对象

    spring MVC之构造ModelAndView对象 ---------- 构造ModelAndView对象 当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndV ...

  9. ModelAndView对象作用

    ModelAndView ModelAndView对象有两个作用: 作用一  :设置转向地址,如下所示(这也是ModelAndView和ModelMap的主要区别) ModelAndView mv = ...

随机推荐

  1. jenkins ansible 附zabbix_agent批量安装示例

    插件:Ansible plugin 一.ansible ad-hoc command 二.ansible-playbook 批量部署zabbix-agent示例: playbook 目录及文件组成 [ ...

  2. GoLang基础数据类型-切片(slice)详解

    GoLang基础数据类型-切片(slice)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 数组的长度在定义之后无法再次修改:数组是值类型,每次传递都将产生一份副本.显然这种数 ...

  3. 学习windows编程 day4 之 矩形的操作

    LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRU ...

  4. src路径问题:./ 与 ../

    ./ :当前目录(相对路径) ../ :当前目录的父目录(相对路径) /:根目录(绝对路径) vue 中 @ 指向 src 文件夹: 在 build 文件夹下 webpack.base.conf.js ...

  5. xml/map转换器,递归设计思路【纯原】

    xml/map转换器 xml转换: xml/map转换器 xml合并: xml合并 snagit图片:http://pan.baidu.com/s/1nuKJD13 git样例: https://gi ...

  6. C#常用的正则工具类写法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. java实现网页验证码

    Servlet: package cn.bdqn.servlet; import javax.imageio.ImageIO; import javax.servlet.ServletExceptio ...

  8. 法律AI数据及应用

    本文简单列举了法律AI目前的应用,数据集,研究方向. 历史 1970年,Buchanan和Headrick发表文章"关于人工智能和法律推理的一些猜测",讨论了对法律研究和推理进行建 ...

  9. Java基础编程题——打印九九乘法表

    package com.yangzl.basic; /** * 九九乘法表 * @author Administrator * */ public class Nine_Nine_Multiplica ...

  10. Postfix - Extmail 邮箱系统

    Postfix Dovecot Extmail 邮箱系统早前的内部邮箱系统重新整理下:现在Extmail官方有集成镜像的EMOS_1.6_x86_64免费版:可直接下载安装: 系统环境: linux ...