转自:http://jianzh5.iteye.com/blog/1909234

Spring Mvc 有如下的几种返回方式:

ModelAndView,

Model,

ModelMap,

Map,

View,

String,

void

例子在类开始之前加上了如下注解:

@Controller

@RequestMapping("/adController")

一:ModelAndView

@RequestMapping("/show")
public ModelAndView show(){
ModelAndView mav = new ModelAndView();
mav.setViewName("/admin/show");
mav.addObject("aaa", "11111");
return mav;
}

请求路径:项目路径/adController/show.do

返回视图:项目路径/admin/show.jsp

通过ModelAndView构造方法可以指定返回的页面名称,也可以通过setViewName()方法跳转到指定页面,使用addObject()设置需要返回的值。

在页面上可以通过El表达式${aaa}获取!

二:MAP

@RequestMapping("/show2")
public Map<String,String> getMap(){
System.out.println("show2");
Map<String,String> map = new HashMap<String, String>();
map.put("key1", "111");
map.put("key2", "222");
return map;
}

请求路径:项目路径/adController/show2.do

返回视图:项目路径/adController/show2.jsp

URL = prefix前缀+视图名称+suffix后缀组成。

在前台页面也可以根据${key1}来获取相应的值。

三:String

@RequestMapping("/show3")
public String getString(ModelMap model) {
model.addAttribute("aaa", "1111");
model.addAttribute("bbb","222");
return "center";
}

请求路径:项目路径/adController/show3.do

返回路径:项目路径/center.jsp

URL = prefix前缀+/return的值+suffix组成

可以通过ModelMap构建返回的参数,该ModelMap不需要自己创建。

如果加上了@ResponseBody注解,则会直接将输出值返回输出到页面。

页面会直接显示 “center”

四:Void

@RequestMapping("/show4")
public void getVoid() {
}

请求路径:项目路径/adController/show3.do

返回路径:对于请求路径  后缀为 .jsp

同样也可以构造ModelMap返回参数

小结:

1、使用String作为请求处理方法的返回类型是比较通用的方法,这样返回的逻辑视图名不会和请求的URL绑定,具有很大的灵活性,而模型数据也可以根据ModelMap构造控制。

2、使用Void,Map 返回对应的逻辑视图名称真实url为:prefix前缀+视图名称 +suffix后缀组成。

Spring Mvc 返回机制的更多相关文章

  1. Spring MVC—数据绑定机制,数据转换,数据格式化配置,数据校验

    Spring MVC数据绑定机制 数据转换 Spring MVC处理JSON 数据格式化配置使用 数据校验 数据校验 Spring MVC数据绑定机制 Spring MVC解析JSON格式的数据: 步 ...

  2. spring mvc返回json字符串的方式

    spring mvc返回json字符串的方式 方案一:使用@ResponseBody 注解返回响应体 直接将返回值序列化json            优点:不需要自己再处理 步骤一:在spring- ...

  3. spring mvc返回json字符串数据,只需要返回一个java bean对象就行,只要这个java bean 对象实现了序列化serializeable

    1.spring mvc返回json数据,只需要返回一个java bean对象就行,只要这个java bean 对象实现了序列化serializeable 2. @RequestMapping(val ...

  4. Spring MVC 返回NULL时客户端用$.getJSON的问题

    如果Spring MVC返回是NULL,那么客户端的$.getJSON就不会触发: 必须返回点什么东西: 如果返回的是一个字符串,客户端的$.getJSON也不会触发:把字符串 包装成List< ...

  5. Spring MVC 返回 xml json pdf 数据的配置方法

    <!-- Spring MVC 返回 xml 数据的配置方法 -->     <bean class="org.springframework.web.servlet.vi ...

  6. 浅析Spring MVC工作机制

    1.如何使用Spring MVC? 在web.xml中配置一个DispatcherServlet DispatchServlet初始化的时候会去寻找一个在应用程序的WEB-INF目录下的配置文件,命名 ...

  7. Spring Mvc返回html页面404错误解决记录--转载

    原文地址:http://53873039oycg.iteye.com/blog/2061992 以前使用Spring Mvc时候都是返回jsp页面或者ftl页面,昨天想返回html页面,spring- ...

  8. Spring MVC返回json数据给Android端

    原先做Android项目时,服务端接口一直是别人写的,自己拿来调用一下,但下个项目,接口也要自己搞定了,我想用Spring MVC框架来提供接口,这两天便抽空浅学了一下该框架以及该框架如何返回json ...

  9. Spring mvc 返回json格式 - 龙企阁 - 博客频道 - CSDN.NET

    第一次使用spring mvc ,在此也算是记录一下以防忘记,希望有经验的朋友指出不足的地方 一.使用maven管理jar. <dependency> <groupId>org ...

随机推荐

  1. C#生成不重复的随机数

    在做能自动生成试卷的考试系统时,常常需要随机生成一组不重复的题目,在.net Framework中提供了一个专门用来产生随机数 http://www.jbxue.com/tags/suijishu.h ...

  2. php教程一,变量

    php是一种动态脚本语言,比较适合web开发. php支持8种变量数据类型: 四种标量类型: boolean(布尔型) integer(整型) float(浮点型,也称作 double) string ...

  3. ASP.NET MVC4学习笔记路由系统实现

    一.路由实现 路由系统实际是一个实现了ASP.NET IHttpModule接口的模块,通过注册HttpApplication的PostResolveRequestCache 事件对Url路由处理.总 ...

  4. 会写网页 就会写手机APP -- Hybrid Mobile Apps for ASP.NET Developers

    您好,这篇文章是我的BLOG发出,原始出处在此: 会写网页 就会写手机APP -- Hybrid Mobile Apps for ASP.NET Developers http://www.dotbl ...

  5. 共享内存shared pool (5):详解一条SQL在library cache中解析

    前面介绍的 shared pool,library cache结构,都是为了说明一条SQL是如何被解析的.先看下面的图: 图中涉及的各结构简单介绍 父HANDLE,里面有父游标堆0的地址.. 父游标堆 ...

  6. WPF优化体验<一>

    最近将一个开发和维护了五年的一个Winform项目进行重构,考虑到最近很流行将用户体验挂在嘴上,于是采用了WPF技术,希望能在外观和体验上有一个全新的效果. 以前使用Winform的时候内存控制得不错 ...

  7. java获取数据库里表的名字

    一.Java方法 // 得到当前数据库下所有的表名 public void getTableNameByCon(Connection con) { try { DatabaseMetaData met ...

  8. linux 命令 more

    more命令: 从前往后读取文件,启动时加载整个文件,让整个文件的内容从上到下显示在屏幕上. 可以逐页读取,空格(space):下一页,b键(back):上一页,而且还有搜索字符串的功能. more ...

  9. Spring框架中的IOC和DI的区别

    上次面试被问到IOC和DI的区别时,没怎么在意,昨天又被问到,感觉有点可惜.今晚总算抽点时间,查看了spring官方文档.发现,IoC更像是一种思想,DI是一种行为.为了降低程序的耦合度,利用spri ...

  10. 归并排序 & 计数排序 & 基数排序 & 冒泡排序 & 选择排序 ----> 内部排序性能比较

    2.3 归并排序 接口定义: int merge(void* data, int esize, int lpos, int dpos, int rpos, int (*compare)(const v ...