spring mvc的工作机制是怎样的
1、springmvc将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作;
springmvc,接收到前台的请求信息之后,会把请求递交给dispatcherservlet,(dispatcherservlet:DispatcherServlet是前置控制器,配置在web.xml文件中的。拦截匹配的请求,Servlet拦截匹配规则要自己定义,把拦截下来的请求,依据相应的规则分发到目标Controller来处理,是配置spring MVC的第一步。),dispatcherservlet会将拦截的请求交给系统中其他的模块进行处理,contraller;
2、DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller;
dispatcherservlet会在接收到前台的请求之后,根据配置的HandlerMapping,(HandlerMapping 映射处理器:包括四种:BeanNameUrlHandlerMapping (根据controller的name名称来映射寻找controller),SimpleUrlHandlerMapping(根据URL来映射寻找controller),ControllerClassNameHandlerMapping (根据controller的类名来映射寻找controller:),DefaultAnnotationHandlerMapping(使用注解来映射寻找controller)详见:http://blog.csdn.net/xzh121121/article/details/79268650),去寻找合适的controler进行处理
3、DispatcherServlet将请求提交到目标Controller;
(dispatcherservlet将请求通过handlemapping交给controller进行处理)
4、controller进行处理之后会返回一个modelandview,(modelandview:modelandview分为两个部分:model和view,model用来存储数据,view定义返回的页面是哪一个,常用 视图解析器:InternalResourceViewResolver,配上相应的前缀和后缀,系统会自动解析详见:http://blog.csdn.net/xzh121121/article/details/79268814,不同的视图解析器:http://blog.csdn.net/xzh121121/article/details/79269093)
5、DispathcherServlet查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象;
(根据配置不同的视图解析器进行查找modelandview指定的视图对象)
6、视图负责将结果显示到客户端;视图对象负责渲染返回给客户端。
视图对象将逻辑视图转换成物理视图