(二十二)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiangshangchunjiezi/article/details/88976797

一、返回ModelAndView(视图+数据)

若处理器方法处理完后,需要跳转到其它资源,且又要在跳转资源之间传递数据,此时处理器方法返回ModelAndView较好。在使用时,若该处理器方法只是进行跳转而不传递数据,或只是传递数据而不跳转资源(比如对页面的Ajax异步响应),此时若返回ModelAndView,总有一部分多余,要么Model多余,要么View多余,此时返回ModelAndView不合适。

二、返回String(视图)

内部资源视图名

在Controller方法中直接返回内部资源视图的名称字符串,如下

@RequestMapping("/toUserList.do")
public String toUserList() throws Exception {
    return "/WEB-INF/jsp/success.jsp";
}

注意返回String时可以配合内部资源视图解析器配置的前缀和后缀一起使用。也可以返回视图对象名,配合XmlViewResolver视图解析器来使用。

三、返回void

1:通过ServletAPI来传递数据并完成跳转。

2:使用Ajax的时候,不需要有返回值。

四、返回Object

区分String是数据还是视图,看处理器方法的上面是否有@ResponseBody注解,有代表数据;无代表视图

处理器方法也可以返回Object对象。但返回的Obejct对象不是作为视图来出现的,而是作为数据在页面直接显示的。返回Object对象,需要配合@ResponseBody注解来使用。如下:

@ResponseBody:将数据输出到浏览器(输出到应答体中)

@RequestMapping("/toUserList.do")
@ResponseBody
public String toUserList() throws Exception {
    return new Student();
}
<mvc:annotation-driven />

转载自:http://www.cnblogs.com/xinhudong/p/10556899.html

猜你喜欢

转载自blog.csdn.net/jiangshangchunjiezi/article/details/88976797