SpringMVC注解开发运行原理

服务器初始化过程:

1:服务器初始化 加载继承 AbstractDispatcherServletInitializer即springmvc定义的代替web.xml的

类初始化web容器

然后重写三个方法:

one:

createServletApplicationContext 方法 返回值为WebApplicationContext(sprigmvc容器)
新建一个WebApplicationContext子类AnnotationConfigWebApplicationContext调用register方法注册springmvc的配置文件进入 再返回子类

目标

加载springmvc的配置文件 查看配置文件设置的注解扫描路径下的controller注解标志的Bean 对controller标志的Bean 进行加载该Bean下的RequestMapping注解 跟据其名称对应具体方法

two:

getServletMappings返回值是字符串数组在方法内部加需要被springmvc管理的路径 然后返回

目的:

设置那些路径交给springmvc控制器处理  即需要被mvc拦截处理的路径

three:

createRootApplicationContext和第一个方法差不多返回值也一样 只不过他是用于创建加载的spring的配置

单次请求过程:

1:客户端发送HTTP请求到服务端

2:服务端初始化好的web容器判断该请求是否被springmvc管理

3:让该管理解析请求的路径

4:在RequestMapping中进行路径匹配

5:匹配成功调用方法

6:检查有无responsBody注解 即看看返回值是什么形式返回

经验分享 程序员 微信小程序 职场和发展