Web容器
web容器主要有,Apache、IIS、Tomcat、Jetty、JBoss、WebLogic 二Tomcat,jetty,jboss同时也是servlet容器,
如果你要访问jsp/servlet ,你就要安装一个servlet容器,但是光有servlet容器还不够,应为他要被解析成htm输出,所以还需要一个web容器。大部分的servlet容器同时也提供了web容器,也就是说,大多数servlet容器可以独立运行你的web应用
web容器通过servlet容器管理servlet、监听器、过滤器。这些都是在web容器的掌握的范围里,他们不再spring,springmvc的掌握的范围内,因此我们不能通过直接注解的方式来注入我们需要的对象,是无效的。web容器时无法识别的。
Tomcat
在Tomcat中有4种级别的容器:Engine,Host,Context,Wrapper.
Servlet生命周期:下面内容来自:https://www.cnblogs.com/lanSeGeDiao/p/9280765.html
Servlet 容器理解,(生命周期,servletcontext,servlet装载方式)
1. 当请求访问服务器的时候,服务器通过xml配置找到对应的servlet类
2. 如果通过自动装载就在服务器启动的时候调用servlet 中的init方法,负责就在请求访问服务器的时候初始化。
3. 服务器根据web.xml配置的servlet映射,找到处理请求对应的类进行处理。
4. servlet根据请求的方式调用doGet 和doPost方法
tomcat装载servlet三种方式说明
servletContext说明:
tomcat容器装载servlet 。当服务器启动的时候会为servlet创建一个servletContext的作用域,此作用域时全局的,后期通过这个作用域理解为Springcontext的作用域。
通过当前的额servlet可以得到与他关联的servletContext对象,也就是上下文
HttpSession(私有域) ServletContext(公共域)
1. 作用范围不同: HttpSession时针对每一个客户端iu兰奇单独有一个
2. ServletContext时针对每一个Web应用程序的
3. 存活时间不同,HttpSession第一次访问服务器,服务端调用request.getSession()创建,访问间隔时间超过30分钟就销毁
4. ServletContext服务启动时创建,服务停止销毁。