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

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

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

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

在上篇的基础上,仅仅改动Login类

package com.itmyhome;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;@Controller
public class Login {@RequestMapping(value="login")public ModelAndView login(){ModelAndView mav = new ModelAndView();mav.setViewName("welcome"); //返回的文件名称mav.addObject("message","hello kitty");//ListList<String> list = new ArrayList<String>();list.add("java");list.add("c++");list.add("oracle");mav.addObject("bookList", list);//MapMap<String,String> map = new HashMap<String,String>();map.put("zhangsan", "北京");map.put("lisi", "上海");map.put("wangwu", "深圳");mav.addObject("map",map);return mav;}
}

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

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

然后改动welcome.jsp输出数据

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

<%@ 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

<body><!-- 输出普通字符 -->${message } <br/><!-- 输出List --><p>书籍列表</p><c:forEach items="${bookList}" var="node"><c:out value="${node}"></c:out></c:forEach><br/><br/><!-- 输出Map --><c:forEach items="${map}" var="node">姓名:<c:out value="${node.key}"></c:out>住址:<c:out value="${node.value}"></c:out><br/></c:forEach>
</body>

结果如图:

万一在里面碰到大牛了呢?欢迎增加群:74955800

springMVC3学习(二)--ModelAndView对象相关推荐

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

    原文链接:springMVC3学习(二)--ModelAndView对象 当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherS ...

  2. JS高级的学习(二)

    JS高级的学习(二) set对象 Set 是一个对象 存放数据 数据永远不会重复 Set 当成是一个数组 遍历 使用 数组方法 find findIndex Map 数组转成 Set对象 const ...

  3. 学习Scala:伴生对象和伴生类之间的关系(二)

    孤立对象是只有一个object关键字修饰的对象,该对象会编译成两个class文件,一个是以孤立对象的名字命名的class, 一个是以孤立对象的名字后面加上一个$ 字符命名的class, 这个class ...

  4. 艾伟:C#多线程学习(六) 互斥对象

    本系列文章导航 C#多线程学习(一) 多线程的相关概念 C#多线程学习(二) 如何操纵一个线程 C#多线程学习(三) 生产者和消费者 C#多线程学习(四) 多线程的自动管理(线程池) C#多线程学习( ...

  5. C#多线程学习(二) 如何操纵一个线程

    C#多线程学习(二) 如何操纵一个线程 原文链接:http://kb.cnblogs.com/page/42529/ [1] C#多线程学习(二) 如何操纵一个线程 [2] C#多线程学习(二) 如何 ...

  6. 学习Kotlin(四)对象与泛型

    推荐阅读: 学习Kotlin(一)为什么使用Kotlin 学习Kotlin(二)基本语法 学习Kotlin(三)类和接口 学习Kotlin(四)对象与泛型 学习Kotlin(五)函数与Lambda表达 ...

  7. spring security 学习二

    spring security 学习二 doc:https://docs.spring.io/spring-security/site/docs/ 基于表单的认证(个性化认证流程): 一.自定义登录页 ...

  8. C#多线程学习(六) 互斥对象

    C#多线程学习(六) 互斥对象 原文链接:http://kb.cnblogs.com/page/42533/ 本系列文章导航 C#多线程学习(一) 多线程的相关概念 C#多线程学习(二) 如何操纵一个 ...

  9. STL源码剖析学习二:空间配置器(allocator)

    STL源码剖析学习二:空间配置器(allocator) 标准接口: vlaue_type pointer const_pointer reference const_reference size_ty ...

最新文章

  1. AutoFac Ioc依赖注入容器
  2. appium简明教程(7)——Desired Capabilities详解
  3. mfc vs2013 项目怎么更改类名_VS2010 更改MFC标题及标题栏图标和exe图标
  4. top命令---Linux学习笔记
  5. winform直接控制云台_速学指南,2分钟学会Feiyu pocket口袋云台的隐藏功能操作
  6. oracle中时间加减一年的写法
  7. oracle 10g 扩表空间,Oracle 10g 表空间管理(一)
  8. Atitit.mysql oracle with as模式临时表模式 CTE 语句的使用,减少子查询的结构性 mssql sql server..
  9. java实验报告_java实验报告
  10. vivo NEX的Usb调试模式在哪里,打开vivo NEXUsb调试模式的教程
  11. android编程:调节视频画面分辨率,Android实现任意分辨率视频编码的思考与实现
  12. 计算机表格如何求和,excel表格怎么求和? excel自动求和的三种方法
  13. 系统集成项目管理工程师计算题(沟通渠道)
  14. 【错误记录】Flutter 编译报错 ( The parameter ‘‘ can‘t have a value of ‘null‘ because of its type, but the im )
  15. bat批处理文件搞定所有系统问题
  16. matlab求解方程小程序,自学Matlab必备的60个小程
  17. matlab示波器导出图片,MATLAB SIMULINK 示波器 SCOPE 图片保存
  18. IP地址,子网掩码以及子网掩码的划分
  19. html网络花店设计图片,花店网站设计,html+CSS+JS
  20. 仿微信录制视频和拍照并发送留言

热门文章

  1. Mac-使用技巧之快捷键
  2. window.open在Safari中不能打开
  3. 20175330 数据结构-单链表(选做)
  4. 《Linux内核分析》实验一
  5. HTML 中的marquee标签详解
  6. 《The Elements of User Experience》读书笔记
  7. Understanding the Framework (理解FMS框架)
  8. Hybird混合开发APP初学体验
  9. 云服务器ECS挖矿木马病毒处理和解决方案
  10. Servlet自动注入Spring容器中的Bean解决方法