加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-14 16:38:15 所属栏目:Java 来源:网络整理
导读:我知道在春天mvc在@Controller中的@RequestMapping方法我可以返回 字符串 模型 ModelAndView 我不明白这些行为之间的区别. 你能解释一下吗 解决方法 在 Spring 3.2.x中有更多只是那些3.参见 Spring website的文档.Latests Spring(4.2.x) documentation. 以下
我知道在春天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注释引用数据访问器方法的结果.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读