J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition),它的核心是一组技术规范与指南,提供基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型。

J2EE分层:

                         

客户层,执行在客户计算机上的组件,用户与系统的接口逻辑,通过http协议的来訪问应用server。
        表示层,执行在J2EEserver上的组件,通过与业务逻辑层互动。将用户须要的数据以适当的方式输出。

业务逻辑层,相同是执行在J2EEserver上的组件。
        企业信息系统层(EIS),是指执行在EISserver上的软件系统。

以上层次一般也指三层应用,也就是客户层+J2EE应用服务层+企业信息系统层。分布在三个不同位置:客户计算机、J2EEserver及后台的数据库或过去遗留下来的系统。

客户层

Web浏览器

也称Webclient, 以标准格式来显示从server传递过来的网页,它们传递给浏览器时已经是HTML或者XML格式,浏览器正确的显示给用户。

小应用程序(Applet)

是嵌在浏览器中的一种轻量级client。当web页面不能充分的表现数据或者应用界面的时候,才使用它,Applet是一种替代web页面的手段。可以使用J2SE开发Applet。Applet无法使用J2EE中的各种Service和API。必须执行在安装了Java虚拟机的Web浏览器上。

应用程序client

J2EE应用程序client相对Applet而言。是一个较重量级的client,可以使用大多数的服务和API,它执行在客户机上,能提供强大而灵活易用的用户界面,如使用Swing或AWT创建的图形化的用户界面(GUI)。当然。应用程序可直接訪问执行在业务层的Bean,假设需求同意。也可以打开HTTP连接,建立与执行在Web层上的Servlet之间的通讯。

J2EE应用server

两大容器

EJB容器+Web容器,即业务逻辑层+表示层

Web容器

管理全部的Servlet等Web组件的执行。对响应客户请求和返回结果提供了执行时的支持。

EJB容器:

负责全部的EJB的执行。支持EJB组件的事务处理和生命周期管理。以及Bean的查找和其它服务,支持J2EE多层架构的基础结构。是一个控制业务实现的执行期环境,并提供事务服务、持久性、安全性等重要的系统服务,让开发者不必开发基础服务而将注意力集中在业务逻辑的实现。

两大组件

Web组件+Ejb组件

Web组件

与基于Web的client进行交互,J2EE中有三类Web组件:Servlet、JSP、JavaBean,Servlet是Webserver的功能扩展。接受Web请求,返回动态的Web页面。

Web容器中的组件能够使用EJB中的组件来完毕复杂的业务逻辑。值得注意的是静态的HTML页面和Applets不算是Web层组件。

EJB组件

包括三种不同类型的EJB:会话Bean、消息驱动Bean、实体Bean
        第一:会话Bean:着重业务逻辑的实现与控制,负责与Web层通信,给Web层提供訪问业务数据的接口。

当client完毕运行过程的时候。会话Bean及相关数据会消失。

第二:实体Bean:代表持久数据。数据相当于存储在数据库表中,它负责保存业务数据,给会话Bean訪问业务数据的接口。

第三:消息驱动Bean:用于接收、处理客户通过JMS发送过来的消息,同意业务组件接收衣服的JMS消息。

企业信息系统层

负责执行企业信息系统软件,包含ERP、数据库、文件夹服务、其它遗留系统等。

总结

J2EE所包括的各类组件、服务架构及技术层次。均有共同的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性。解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。

参考:https://www.cnblogs.com/yutingliuyl/p/7281352.html

J2EE的体系架构的更多相关文章

  1. J2EE的体系架构——J2EE

    J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition),它的核心是一组技术规范与指南,提供基于组件的方式来设计.开发.组装和部署企业应用.J2EE使用多 ...

  2. SaaS系列介绍之十三: SaaS系统体系架构

    1 系统体系架构设计 软件开发中系统体系架构决定了一个系统稳定性.健壮性.可扩展性.兼容性和可用性,它是系统的灵魂.体系架构是架构师所关注的核心.良好的体系架构是系统成功的开端,否则,再好的代码与设计 ...

  3. JavaEE体系架构

    转载于:https://www.cnblogs.com/reverseAC/p/8512379.html JavaEE知识体系结构图 JavaEE体系结构图: 认识JavaEE完整体系架构(转载):作 ...

  4. J2EE WEB应用架构分析

    1. 架构概述 J2EE体系包括java server pages(JSP) ,java SERVLET, enterprise bean,WEB service等技术.这些技术的出现给电子商务时代的 ...

  5. 说说面向服务的体系架构SOA

    序言 在.Net的世界中,一提及SOA,大家想到的应该是Web Service,WCF,还有人或许也会在.NET MVC中的Web API上做上标记,然后泛泛其谈! 的确,微软的这些技术也确实推动着面 ...

  6. 【转】XenServer体系架构解析

    XenServer是一套已在云计算环境中经过验证的企业级开放式服务器虚拟化解决方案,可以将静态.复杂的IT环境转变为更加动态.易于管理的虚拟数据中心,从而大大降低数据中心成本.同时,它可以提供先进的管 ...

  7. WebLogic集群体系架构

    WebLogic Server集群概述  WebLogic Server 群集由多个 WebLogic Server 服务器实例组成,这些服务器实例同时运行并一起工作以提高可缩放性和可靠性.对于客户端 ...

  8. F2工作流引擎这工作流引擎体系架构(二)

    F2工作流体系架构概览图 为了能更好的了解F2工作流引擎的架构体系,花了些时间画了整个架构的体系图.F2工作流引擎遵循参考WFCM规范,目标是实现轻量级的工作流引擎,支持多种数据库及快速应用到任何基于 ...

  9. Atitit 知识图谱解决方案:提供完整知识体系架构的搜索与知识结果overview

    Atitit 知识图谱解决方案:提供完整知识体系架构的搜索与知识结果overview   知识图谱的表示和在搜索中的展1 提升Google搜索效果3 1.找到最想要的信息.3 2.提供最全面的摘要.4 ...

随机推荐

  1. iOS仿UC浏览器顶部频道滚动效果

    很喜欢用UC浏览器上网,当然不是给UC打广告,里面有很多酷炫的效果,值的学习,这次分享的是频道滚动的效果.动画效果如下: 实现的这个效果的关键是绘制,重写顶部Label的drawRect方法 gith ...

  2. C# Winform下一个热插拔的MIS/MRP/ERP框架16(窗体基类场景2)

    如果没有特别需求,和场景1一样只变更表名,主键字段,检测字段等名称,不需要写其它代码了. * 清单列表+单笔编辑/保存,适用于大多数基础资料管理以及简单的单据资料录入(当然,排版是要改一改的): * ...

  3. 获取 input type="file" 标签的内容,并使用ajax进行请求到服务器

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. nosql基本了解

    数据库分为关系型数据库和非关系型数据库nosql,关系型数据库比较常见,此处不再多讲:nosql有key-value存储数据库,比如redis:文档型数据库,比如mongodb:列存储数据库,比如hb ...

  5. itemgetter和groupby

    一. itemgetter的使用方法 itemgetter()返回一个指定列表下标或者字典键的函数,通过这个返回的函数作用到对象上,获得才能取得相应的值 1. 排序字典列表的一个例子 from ope ...

  6. K:java中的安全模型(沙箱机制)

    本博文整合自:Java安全--理解Java沙箱.Java 安全模型介绍.Java的沙箱机制原理入门 相关介绍:  我们都知道,程序员编写一个Java程序,默认的情况下可以访问该机器的任意资源,比如读取 ...

  7. jmeter服务器监控插件指标简单说明

    以下是下载了服务器监控插件的各个组件的功能介绍,有助于以后jmeter的性能测试 1.jp@gc - Actiive Threads Over Time:不同时间的活动用户数量展示(图表) 当前的时间 ...

  8. HTML5基础实例(三)

    不知道从哪说起那就一段一段代码的说吧 实例一:iframe框架显示 写一个这样的网页: 分析: 1.需要三个链接,一个是默认的百度链接,默认显示在那个框里,另外:两个是点击跳转的超链接. 2.需要if ...

  9. 关于iframe切换的问题

    定位不到元素的另一种问题是有这种iframe,所有我们需要切换到该页面中去 1.首先找到这个iframe的位置,像上图有id属性我们直接  iframe = driver.find_element_b ...

  10. 图的最短路径---弗洛伊德(Floyd)算法浅析

    算法介绍 和Dijkstra算法一样,Floyd算法也是为了解决寻找给定的加权图中顶点间最短路径的算法.不同的是,Floyd可以用来解决"多源最短路径"的问题. 算法思路 算法需要 ...