pugna
全部博文(171)
分类: Web开发
2013-12-03 16:25:21
原文地址:web容器与servlet容器的区别 作者:drafei123
1. web容器好比 电视机
servlet容器好比 VCD
没有VCD你可以看电视,对吧,但是有了VCD没有电视机,你从哪看起?:)
没有servlet容器,你也可以用web容器直接访问静态页面,比如安装一个apache等,但是如果要显示jsp/servlet,你就要安装一个 servlet容器了,但是光有servlet容器是不够的,因为它要被解析成html输出,所以你仍需要一个web容器.
大多数servlet容器同时提供了web容器的功能,也就是说大多servelt可以独立运行你的web应用。
2.实际上容器就是一个服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求,如java中的Tomcat容器,ASP的IIS或PWS都是这样的容器,一个服务器不止一个容器的
3.WEB Container,给处于其中的应用程序组件(JSP,SERVLET)提供一个环境,使JSP、SERVLET直接跟容器中的服务接**互,不必关注其它系统问题。WEB Container主要有WEB服务器来实现。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。比如,Resin 2.1.x以上版本提供的Servlet Container就实现了J2EE的Servlet 2.3规范。我们把遵守以上标准的WEB服务器就叫做J2EE中的WEB容器。
WEB容器更多的是跟基于HTTP的请求打交道。而EJB容器不是。它是更多的跟数据库、其它服务打交道。但他们都是把与外界的交互实现从而减轻应用程序的负担。例如SERVLET不用关心HTTP的细节,直接引用环境变量session,request,response就行、EJB不用关心数据库连接速度、各种事务控制,直接由容器来完成。