springMVC3学习(二)--ModelAndView对象
当控制器处理完请求时,一般会将包括视图名称或视图对象以及一些模型属性的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对象相关推荐
- springMVC3学习--ModelAndView对象(转)
原文链接:springMVC3学习(二)--ModelAndView对象 当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherS ...
- JS高级的学习(二)
JS高级的学习(二) set对象 Set 是一个对象 存放数据 数据永远不会重复 Set 当成是一个数组 遍历 使用 数组方法 find findIndex Map 数组转成 Set对象 const ...
- 学习Scala:伴生对象和伴生类之间的关系(二)
孤立对象是只有一个object关键字修饰的对象,该对象会编译成两个class文件,一个是以孤立对象的名字命名的class, 一个是以孤立对象的名字后面加上一个$ 字符命名的class, 这个class ...
- 艾伟:C#多线程学习(六) 互斥对象
本系列文章导航 C#多线程学习(一) 多线程的相关概念 C#多线程学习(二) 如何操纵一个线程 C#多线程学习(三) 生产者和消费者 C#多线程学习(四) 多线程的自动管理(线程池) C#多线程学习( ...
- C#多线程学习(二) 如何操纵一个线程
C#多线程学习(二) 如何操纵一个线程 原文链接:http://kb.cnblogs.com/page/42529/ [1] C#多线程学习(二) 如何操纵一个线程 [2] C#多线程学习(二) 如何 ...
- 学习Kotlin(四)对象与泛型
推荐阅读: 学习Kotlin(一)为什么使用Kotlin 学习Kotlin(二)基本语法 学习Kotlin(三)类和接口 学习Kotlin(四)对象与泛型 学习Kotlin(五)函数与Lambda表达 ...
- spring security 学习二
spring security 学习二 doc:https://docs.spring.io/spring-security/site/docs/ 基于表单的认证(个性化认证流程): 一.自定义登录页 ...
- C#多线程学习(六) 互斥对象
C#多线程学习(六) 互斥对象 原文链接:http://kb.cnblogs.com/page/42533/ 本系列文章导航 C#多线程学习(一) 多线程的相关概念 C#多线程学习(二) 如何操纵一个 ...
- STL源码剖析学习二:空间配置器(allocator)
STL源码剖析学习二:空间配置器(allocator) 标准接口: vlaue_type pointer const_pointer reference const_reference size_ty ...
最新文章
- AutoFac Ioc依赖注入容器
- appium简明教程(7)——Desired Capabilities详解
- mfc vs2013 项目怎么更改类名_VS2010 更改MFC标题及标题栏图标和exe图标
- top命令---Linux学习笔记
- winform直接控制云台_速学指南,2分钟学会Feiyu pocket口袋云台的隐藏功能操作
- oracle中时间加减一年的写法
- oracle 10g 扩表空间,Oracle 10g 表空间管理(一)
- Atitit.mysql oracle with as模式临时表模式 CTE 语句的使用,减少子查询的结构性 mssql sql server..
- java实验报告_java实验报告
- vivo NEX的Usb调试模式在哪里,打开vivo NEXUsb调试模式的教程
- android编程:调节视频画面分辨率,Android实现任意分辨率视频编码的思考与实现
- 计算机表格如何求和,excel表格怎么求和? excel自动求和的三种方法
- 系统集成项目管理工程师计算题(沟通渠道)
- 【错误记录】Flutter 编译报错 ( The parameter ‘‘ can‘t have a value of ‘null‘ because of its type, but the im )
- bat批处理文件搞定所有系统问题
- matlab求解方程小程序,自学Matlab必备的60个小程
- matlab示波器导出图片,MATLAB SIMULINK 示波器 SCOPE 图片保存
- IP地址,子网掩码以及子网掩码的划分
- html网络花店设计图片,花店网站设计,html+CSS+JS
- 仿微信录制视频和拍照并发送留言