11.Spring MVC请求流程

这篇文章说一下spring mvc的请求流程,开发中使用spring mvc的还是挺多的,所以你需要请求怎么通过各个环节,数据如何流转,最后数据又如何显示在浏览器,明白请求流程还是蛮重要的,对于调查问题很有帮助。
spring mvc的请求流程如下图所示:


11.Spring MVC请求流程_第1张图片
spring mvc请求流程

1.浏览器发出请求,该请求携带请求信息的内容,至少含有url。来到DispatcherServlet控制器。
2.DispatcherServlet会查询一个或者多个handler mapping,来确定下一站在哪里。
3.当确定好对应的控制器,DispatcherServlet会把请求发送选中的控制器将请求发送给spring mvc控制器。
4.控制器在处理完逻辑任务后,会产生对应的信息,也就是model模型,控制器将这些原始的信息打包并且标示出用于渲染输出的视图名,接着会将模型和视图名发送回DispatcherServlet。
5.此时View Resolver视图解析器会根据返回的视图名匹配一个特定的视图进行解析。
6.视图解析成功后,将返回客户端,这个请求就结束了。


可能会在开发中遇到的问题,对于初学者来说,你可能会遇到controller写好了,JSP也开发好了,但是始终不会进你的后台controller,那么你需要查看一下你的url是否和controller的一致,如果不相同,那么handler mapping是不会匹配到你的controller,所以会导致页面404。
还有可能存在相同的url,你和别人的controller不同,但是定义的url是相同的,在别人的顺序之后的话,handler mapping也是首先会从菜单里面匹配到前面的controller,所以会执行他的,而不是执行你的controller。

你可能感兴趣的:(11.Spring MVC请求流程)