我在Spring MVC方面没有太多经验,我对控制器方法可以返回的有效返回类型有以下了解。
因此,我知道用户会生成一个DispatcherServlet接收并处理的HttpRequest,并将此请求分派到特定的控制器类。
控制器类是这样的:
@Controller
public class AccountController {
@RequestMapping("/showAccount")
public String show(@RequestParam("entityId") long id, Model model) {
...
}
.......................................
.......................................
.......................................
}
所以我知道每个方法都处理一个特定的请求,并且已处理的请求由@RequestMapping批注指定。
我也知道该方法返回一个String对象,该对象是逻辑视图名称(然后由视图解析器解析以呈现视图)
因此,在此阶段,我认为控制器类的方法仅返回String对象。但是我不确定。也许像这样的方法还可以返回某些不同类型的对象?
Handler方法有很多返回类型可用,这些返回类型由@RequestMapping
控制器内部注释,例如:
ModelAndView(类)
模型(接口)
HttpEntity<?>
或者 ResponseEntity<?>
HttpHeaders
还有更多.....查看文档
每种返回类型都有其特定的用法,例如:如果使用的是String,则表示返回视图名称,此视图名称将由解析ViewResolver
。如果您不想返回任何视图名称,则将返回类型提及为void
。如果要设置视图名称以及要发送一些数据以供查看,请ModelAndView
用作返回类型。
请仔细阅读文档,您还将了解可以在处理程序方法中传递哪种方法参数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句