自问自答

1 Spring MVC的启动原理?

spring mvc是基于ioc容器的,因此需要先创建IOC容器,才能创建对应的spring mvc执行环境。

IOC容器是通过ContextLoaderListener创建的,这个类通过servletContext创建。

 

在SpringMVC中,最核心的思想其实就是通过Servlet拦截URL,交给相应的handler处理。

 

2 如何拦截并解析的url?

通过DispatcherServlet转发请求,然后通过Handlermapping进行url映射的解析

先说说基于URL的映射吧!它支持统配风格、路径模板风格、正则、以及多路径等等,详细可以参考 ​​基于URL的映射​​ 这篇!

 

3 参数的解析种类?

 最常用的就是@RequestParam以及@PathVariable,其中前一个适用于在url中传入的参数;后一个适用于获取路径中的参数。

可以参考​​这篇博客​​。

 

4 Spring MVC如何理解它的MVC?

在Spring MVC中,可以返回model和view的信息。

而C则是由controller作为页面控制器、handlermapping作为前端控制器来实现。

 

5 Spring MVC中的数据流

 

6 Spring MVC中的最小配置——hello world

 

其实配置SpringMVC注意的东西很简单:

1 必要的两个xml文件,如果没有或者找不到,报错信息也能看到。

2 对应的url要配置对

 

文章参考:​​javascript:void(0)​

 

7 Spring MVC应用最佳实践

 

8 在Spring MVC源码中看到了双亲上下文,这是干嘛用的?

 

9 HandlerAdapter与HandlerMapping之间是什么关系?