ContainerBase的结构
Container是Tomcat中容器的接口,通常使用的Servlet就封装在其子接口Wrapper中。Container一共有4个子接口Engine、Host、Context、Wrapper和一个默认实现类ContainerBase,每个子接口都是一个容器,这4个容器都有一个对应的StandardXXX实现类,并且这些实现类都继承ContainerBase类。另外Container还继承Lifecycle接口,而且ContainerBase间接继承LifecycleBase,所以Engine、Hose、Context、Wrapper 4个子容器都符合前面讲过的tomcat生命周期管理模式。
Container的4个子容器
Container的子容器Engine、Host、Context、Wrapper是逐层包含的关系,其中Engine是最顶层,每个service最多只能有一个Engine,Engine里面可以有多个Host,每个Host下可以有多个Context,每个Conext下可以有多个Wrapper: