J2EE的概念以及容器概念总结

来源:互联网 发布:java 接口有什么用 编辑:程序博客网 时间:2024/04/30 07:23

J2EE的概念:

整体来说,J2EE是java技术不断适应和促进企业级应用过程中的产物,是使用Java技术开发企业级应用的一种事实上的工业标准。它包含了许多的组件,主要可以简化并且规范应用系统的开发和部署,进而提高可移植性、安全性以及再用价值。

容器的概念:

广义上讲容器是用来包装或装载物品的贮存器(如箱、罐、坛)或者成形或柔软不成形的包覆材料。在编程领域中,容器提供组件运行的环境,容器本身可以提供一组服务,让组件按标准方式利用。这里的容器容器比现实中的更为抽象,但思想是想通的。


J2EE容器图

容器的分类:
J2EE规范定义了四种容器,分别是:小程序(Applet)容器、应用程序客户机(ApplicationClient)容器、Web应用程序容器、EJB应用程序容器。开发B/S系统的人员,经常接触到的是Web应用程序容器和EJB应用程序容器。    

EJB容器
EJB容器是服务器端容器,包含的组件是EJB(EnterpriseJavaBeans),作为J2EE的核心之一,它的主要作用是用于服务器端的商业逻辑实现。在EJB的规范定义中,定义了一个开发和部署分布式商业逻辑的框架。用以简化企业级应用的开发,使EJB容器具备可伸缩性、可移植性、分布式事务处理以及多用户等。 企业 Bean 分为三种类型:会话 Bean、实体 Bean 和消息驱动 Bean。会话 Bean 表示瞬态对象和进程,并且通常由单个客户机使用。实体 Bean 表示持久性数据,通常保留在数据库中。消息驱动 Bean 用于将消息异步传送到应用程序模块和服务中。

Web容器
Web容器是服务器端容器,管理所有J2EE应用程序中JSP页面和Servlet组件的执行,JSP和Servlet都是Web服务器的功能扩展,接受Web请求并返回动态的Web页面。它是一种服务程序,就是为应用服务器组提供一个运行环境,使JSP、Servlet直接跟容器中的环境变量 接口交互,不必关注其他系统的问题。

Applet容器
Applet是客户端容器,包含的组件为Applet。它是嵌在浏览器中的一种轻量级客户端,在一般情况下,只有当使用Web页面无法充分表现 数据或者应用界面的时候才会使用它。Applet是代替Web的一种手段,而且Applet无法使用J2EE的各种服务和API,这时为了安全性的考虑。 要注意的是,我们只能通过J2SE开发Applet。

Application Client容器
也是一个客户端容器。Application Client相对于Applet是一种重量级的客户端,因为它能够使用J2EE的大部分Service和API,而Applet不能。
J2EE通过这四种容器能够灵活的实现企业级的架构。在这里要说一下的是:在J2EE的各种服务和API中,JDBC和JCA用于企业资源(各种企业信息系统和数据库等)的连接,JAX-RPC、JAXR和SAAJ则是实现Web Services和Web Services连接的基本支持


容器的作用:


上图很形象的为我们描述了容器与组件的关系,不同类型的组件存放在不同的容器中,容器为它里面的组件提供运行的环境等基础支持。从某种意义上说,容器也是抽象、提取的结果,它将组件中公用的东西提取出来,提前为我们实现,给我们的开发带来了很大的便利。同时我们注意到:J2EE组件包括了Servlet和Jsp两个Web组件和EJB组件。

J2EE中容器与服务器的区别:
    web容器只能来进行静态网页之间的交往,但是当需要显示JSP和Servlet的时候要用到web服务器,即:一般的情况下web容器和web服务器在一个软件(Tomcat)上就能体现出来。
   web服务器(Tomcat)和应用服务器(JBoss)之间的区别:web服务器主要用在显示层(JSP和servet),而应用服务器是用在业务逻辑层的,从某种意义上web服务器属于应用服务器的子集。
    J2EE应用服务器要实现J2EE的十三种规范。比如:JBoss就实现了J2EE的所有规范,而Tomcat没有全部实现,所以JBoss是J2EE应用服务器,而Tomcat不算是J2EE应用服务器。
    servlet服务器属于web服务器,用来管理servlet的生命周期,而应用服务器(Jboss)是将业务层的bean在容器中管理。
    tomcat属于web服务器,jboss,weblogic,webspere属于应用服务类。




原创粉丝点击