基于J2EE规范的中间件——Java EE技术体系

前言

上一篇简单介绍了Java的发展,今天就来继续深入讲解Java EE的体系架构以及JavaEE体系架构与我们之前学习的SSH架构的区别与联系。

 

正题

Java EE体系架构

JavaEE应用程序由组件构成,下面我们就先来看下各个组件在不同层之间的分布。


客户层:

   客户层分布在多个客户机上,客户层的组件分为AppletApplicationHTML三种。

客户端组件与运行在服务器端的业务逻辑组件通信时,既可以直接访问,也可以通过Web层的组件访问

 

中间层:

   中间层分布在JavaEE服务器机(即我们开发的机器)上,主要包括Web组件和业务逻辑组件。

Web组件就是Servlet或由JSP/JSF技术创建的页面,静态HTML或Applet不是JavaEE规范的一部分,那些辅助的工具类(如SSH架构)也不被认为是web组件。

 

   业务逻辑组件也就是JavaEE的核心技术:EJBEJB分为Session BeanEntity BeanMDBMessage Driven Bean),具体内容下节会介绍。

 

   其中Web组件由Web容器管理,如我们常见的Tomcat容器;而EJB则需要由EJB容器进行管理,这时就会用到我们之后会讲到的JBoss服务器。

 

   中间层除了对Web组件和业务逻辑组件进行管理外,主要还用了Java EE的几个重要的服务:JNDI,JMS,JDBC,RMI/IIOP等。

 

   ps:在这里简要介绍一下容器与服务器的概念以及web服务器与应用服务器的区别:

       1)容器是组件运行的环境。应用服务器是程序运行的平台;


       2)应用服务器包括:web容器和ejb容器;Web服务器只包括web容器。


       3Tomcat属于Web服务器,它只能管理Servlet/JSP以及普通的JavaBean,但是不能管理EJB,所以在这里我们使用JBoss应用服务器,它集成了Tomcat;除了Jboss我们还可以使用WebLogic应用服务器(它没有集成Tomcat,但是它有自己的web容器)。

 

EIS:

   EIS(企业信息系统)层,一般而言指的是数据库系统。也可以指企业其它的遗留系统。比如ERP等。

 

Java EE体系架构与SSH架构的比较

   上面介绍Web组件时提到了SSH架构是处于Web层的一个辅助工具类,那么它到底在Java EE体系架构中处于什么位置呢,如下图:


   通过上图,我们可以清晰的看到SSHJavaEE技术体系架构中的位置,SSH处于Web,是用来管理ServletJSP,以及一些简单的JavaBean

 

   可是我们之前使用SSH时直接就贯穿了整个项目,接触到了数据库,怎么这里SSH离数据库的位置这么远呢?

 

   这主要就是因为EJB的存在,EJB与咱们之前写的JavaBean不一样,它需要跨项目甚至跨平台进行操作使用的,所以这时我们的SSH就不能对其进行管理了,于是我们就是使用EJB容器来管理EJB的运行,并使用JPA来代替Hibernate来对持久化数据进行管理(JPAHibernate进行了改进,两者的区别之后会介绍)。

 

 

   本篇主要介绍了Java EE技术体系结构(主要包括客户层,中间层和EIS层),以及SSH在该架构中的位置(处于Web层),下篇会继续介绍Java EE的核心技术:EJB.



展开阅读全文

没有更多推荐了,返回首页