在tomcat启动的时候会扫描web.xml文件,web.xml文件中通常配置三个,分别是:
- 监听器Listen需要配置ContextLoaderListener创建的时候会加载Spring配置文件,然后生成一个Spring容器,先生成的容器为父容器。随后加载service,mapper通过MapperScannerConfigurer装配到service中。
- 第二个配置的是过滤器Filter,一般是字符过滤器CharacterEncodingFilter,如果需要使用到rest风格则需要配置
HiddentHttpMethodFilter - 然后就是servlet,也就是DispatcherServlet(核心分发器),它会加载SpringMVC配置文件,创建一个MVC的容器,创建是有个顺序的,谁先出来谁就是爹。然后他会检测父容器是否存在,如果存在则通过setParent()建立父子关系,(亲子鉴定),随后会创建控制层Control,随后Spring容器那边有service会装配到Control来。