springmvc工作原理

springmvc工作原理其实很简单,其主要通过dispatcherservlet核心控制器来控制前后台交互

dispatcherservlet其实质是个servlet,在web.xml配置文件里经配置,当容器启动时,会调用dispatcherservlet父类的一系列初始化方法,最后流转到dispatcherservlet的initStrategies方法,此方法为容器启动时springmvc初始化策略方法,里面会对文件上传,视图渲染等等所用的一些东西进行初始化,之中最重要的是初始化handerMapping和初始化handerAdapter方法,handerMapping接口主要用于根据用户请求request获取handerAdapter,而handerAdapter接口主要用于根据用户请求request获取controller类里面的方法,然后在运用java反射机制调用此方法,最后再返回视图ModelAndView进行渲染,此时springmvc伴随容器初始化大部分工作完毕

当用户在发送请求时,根据请求类型触发dispatcherservlet父类的doPost或doget或doService方法,然后经过一系列流转,最后运行dispatcherservlet的doDispatch方法,此方法主要作用便是通过handerMapping从上下文中获取handerAdapter,然后由此handerAdaper调用handle方法最后根据用户请求request获取controller类的方法,根据java反射机制调用此方法返回一个视图modelAndView进行渲染

到此为止,springmvc大部分处理完毕

你可能感兴趣的:(note)