一直在研究源码!所以努力就会有收获
此图是我简单话的一个tomcat运行实例的架构图
这份博客只是简单概述tomcat容器是什么,spring容器是什么,springmvc容器是什么,彼此的关系
tomcat架构设计包含连接器和容器
tomcat是基于组件化开发的,一个容器包含很多组件
主要为engine host context wrapper其中wrapper包含spring的dispatcherServlet
tomcat的容器是一个整体的抽象的概念,由上述四个基本组件和种种【管道etc】组件组成
那spring容器在tomcat哪里
=======================
wapper有dispatcherServlet,而dispatcherServlet实现了ApplicationContextAware,熟悉spring源码的肯定知道实现这个接口的类是包含容器的
所以wapper包含了spring-mvc容器
而spring-mvc容器的parent是spring容器
所以spring的容器处于wrapper中可以取到
另外tomcat容器中的context容器有个属性叫做servletContext 一般实现实applicationContext【注意这是tomcat中类】
这个context可以看做包含web应用的相关上下文
其有个线程安全的attirubutes属性,是个hashmap<string,Object>;这里面存放了spring容器和springmvc容器
以上就是spring-mvc ,spring,tomcat[engine host context warpper]容器的关系