springmvc的原理?springmvc的工作流程?springmvc的源码你看过吗?

首先请求到达核心控制器dispatcherServlet,dispatcherServlet会判断请求后缀是否满足格式要求,如果满足格式要求,会查询handlerMapping,查找对应的handler,调用handlerAdapter进行参数绑定等适配工作,之后调用具体的handler进行业务逻辑处理,返回一个modelAndView对象给dispatcherServlet。dispatcherServlet调用viewResolver进行视图解析渲染,然后返回给客户端(回答这些就足够了)

DispatcherServlet类相关的结构图

在这里插入图片描述

DispatcherServlet的初始化程序

DispatcherServlet初始化了什么,可以在其initStrategies()方法中知晓,这个方法如下:

	protected void initStrategies(ApplicationContext context) {
		initMultipartResolver(context);
		initLocaleResolver(context);
		initThemeResolver(context);
		initHandlerMappings(context);
		initHandlerAdapters(context);
		initHandlerExceptionResolvers(context);
		initRequestToViewNameTranslator(context);
		initViewResolvers(context);
		initFlashMapManager(context);
	}
看下HandlerMapping的继承结构:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/he19970408/article/details/107684846
今日推荐