java – 在@RequestMapping方法的spring mvc中使用哪种返回类型?

我知道在春天mvc在@Controller中的@RequestMapping方法我可以返回

>字符串
>模型
> ModelAndView

我不明白这些行为之间的区别.
你能解释一下吗

解决方法

Spring 3.2.x中有更多只是那些3.参见 Spring website的文档.Latests Spring(4.2.x) documentation.

以下是支持的返回类型:

> ModelAndView对象,其中模型隐含地丰富了命令对象和@modelattribute注释引用数据访问器方法的结果.> Model对象,视图名称通过RequestToViewNameTranslator隐式确定,隐式丰富命令对象的模型以及@modelattribute注释引用数据访问器方法的结果.>用于暴露模型的Map对象,其视图名称通过RequestToViewNameTranslator隐式确定,隐式丰富了命令对象的模型以及@modelattribute注释引用数据访问器方法的结果.>一个View对象,该模型通过命令对象和@modelattribute注释引用数据访问器方法隐式确定.处理程序方法也可以通过声明一个Model参数(见上文)以编程方式丰富该模型.>被解释为逻辑视图名称的字符串值,其中模型通过命令对象和@modelattribute注释引用数据访问器方法隐式确定.处理程序方法也可以通过声明一个Model参数(见上文)以编程方式丰富该模型.> void如果方法处理响应本身(通过直接写入响应内容,为此目的声明一个类型为ServletResponse / HttpServletResponse的参数),或者视图名称应该通过RequestToViewNameTranslator隐式确定(不声明响应参数处理程序方法签名).>如果方法用@ResponseBody注释,则返回类型将写入响应HTTP主体.返回值将使用HttpMessageConverters转换为声明的方法参数类型.请参阅“使用@ResponseBody注释映射响应正文”一节.>一个httpentity **或** ResponseEntity对象来提供对Servlet响应HTTP头和内容的访问.实体将使用HttpMessageConverters转换为响应流.请参阅“使用httpentity”一节.>当应用程序想在由Spring MVC管理的线程中异步生成返回值时,可以返回Callable.>当应用程序想从自己选择​​的线程生成返回值时,可以返回DeferredResult.>任何其他返回类型都被认为是要暴露给视图的单一模型属性,使用在方法级别(或基于返回类型类名称属性名称)通过@modelattribute指定的属性名称.该模型隐含地丰富了命令对象和@modelattribute注释引用数据访问器方法的结果.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...