J2EE技术架构文档_第1页
J2EE技术架构文档_第2页
J2EE技术架构文档_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、J2EE 技术架构交通事故处理平台采用先进的J2EE 技术架构,基于多层软件构架( 即客户层、表示层、业务层、集成层和资源层 ) ,采用面向服务的思想、使用 WebService 和 XML 等技术整合与集成各种应用系统,能够为高校数字校园建设提供先进实用、安全可靠、便于兼容、易于扩展的应用解决方案。技术架构如下:J2EE(Java 2 Platform Enterprise Edition) 是 Java2 平台企业版。 J2EE 是一套全然不同于传统应用开发的技术架构,包含大量组件,可简化且规应用系统的开发与部署,进而提高可移植性、伸缩性、安全性与再用价值。J2EE 核心是一组技术规与指南

2、,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种遵循 J2EE 架构开发的软件存在良好的兼容性,解决过去使用的软件产品彼此之间无法兼容、导致部或外部应用难以互通的窘境。J2EE 是使用 JAVA 技术开发企业级应用的一种事实上的工业标准,各个平台开发商按照 J2EE 规分别开发了不同的 J2EE 应用服务器,使用 J2EE 技术开发的企业级应用可以部署在各种 J2EE 应用服务器上,具有良好可移植性。J2EE 企业级应用的不同部分纳入不同的容器(Container) ,每个容器中都包含若干组件(这些组件是需要部署在相应容器中的),同时各种组件都能使用各种J2EE Ser

3、vice 与API 。 J2EE 容器与相应的组件可以部署在网络中的任一服务器上,具有良好的可伸缩性。J2EE 组件的安全是由各自的容器来负责的,组件的开发人员几乎可以不用或者很少在组件中添加有关安全的代码。这种安全逻辑和业务逻辑相对独立的架构,使得企业级应用系统有更好的灵活性和扩展性。J2EE 是以企业与企业之间的运算为导向的JAVA 开发环境。 J2EE 架构定义各类不同组件,如WEB 组件、 EJB 组件等,而各类组件可以复用,可以组装成不同的系统。一、客户层客户层是整个架构的最上层,主要用于将操作界面呈现给用户、建立与服务器的连接、接收并验证用户的输入、管理客户端与服务器的会话状态。客

4、户层分为浏览器客户端和桌面应用客户端。浏览器客户端使用HTML、CSS、JavaScript 与 AJAX等技术实现;桌面应用客户端使用PowerBuilder 集成开发环境实现。1、 HTML(HyperTextMark-upLanguage) :即超文本标记语言,是WWW 的描述语言,是一种简单、通用的全置标记语言。 HTML 文本是由 HTML 命令组成的描述性文本, HTML 命令可以说明文字、图形、动画、声音、表格、等。 HTML 的结构包括头部 (Head)、主体 (Body) 两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体容。2、CSS(CascadingSt

5、yle Sheets):即层叠样式表, 是一种标记语言,它不需要编译, 可以直接由浏览器执行。在标准网页设计中CSS 负责网页容的表现。3、 JavaScript :是一种由Netscape的 LiveScript 发展而来的脚本语言,JavaScript 使网页增加互动性。JavaScript 使有规律地重复的HTML 文段简化,减少下载时间。JavaScript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由CGI(CommonGateway Interface)验证。4、AJAX(AsynchronousJavaScriptand XML):即异步 JavaScript

6、和XML,是指一种创建交互式网页应用的综合开发技术;涉及到:AJAX的定义,基于WEB 标准的XHTML+CSS表示,使用DOM(DocumentObjectModel) 进行动态显示及交互,使用XML和 XSLT(ExtensibleStylesheet Language Transformations) 进行数据交换及相关操作,使用XMLHttpRequest进行异步数据查询、检索,使用JavaScript 进行绑定。二、表示层表示层是整个架构中最活跃的分层,由WEB 服务器及其组件构成,主要用于处理客户端的请求、响应业务层组件的请求。表示层引入了基于组件开发的Struts 开源框架,采用

7、Servlet 与 XML 等技术实现,具有良好的可伸缩性和稳定性,降低了系统开发的复杂度、提高了开发效率,支持所有的J2EE 应用服务器 (包括 Apache Tomcat、 JBossApplicationServer、 IBMWebSphere ApplicationServer 与 BEAWeblogic ApplicationServer 等 )。1、Servlet :是使用 Java Servlet 应用程序开发接口(API) 及相关类和方法的JAVA 组件。除了JAVAServletAPI ,Servlet 还可以使用用以扩展和添加到API 的 JAVA 类软件包。 Servle

8、t 在启用 JAVA 的 WEB 服务器上或应用服务器上运行并扩展了该服务器的能力。Java Servlet API 定义了一个Servlet 和 JAVA服务器之间的一个标准接口,这使得Servlet具有跨服务器平台的特性。2、 XML(ExtensibleMarkupLanguage) :即扩展标记语言,是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以很方便地建立。虽然XML文件比二进制数据占用的空间更多,但 XML极其简单、很容易掌握和使用。XML可以在任何应用程序中读写数据,这使得XML成为数据交换的唯一公共语言。3、 JSP(JavaServerPages):是

9、由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。 JSP技术是在传统的网页HTML文件 (*.htm ,*.html) 中插入Java 程序段 (Scriptlet) 和 JSP 标记 (Tag),从而形成 JSP文件 (*.jsp) 。WEB 服务器在遇到访问JSP 网页的请求时,首先执行其中的程序段,然后将执行结果连同 JSP文件中的HTML 代码一起返回给客户。JSP 可以操作数据库、重新定向网页等,用于实现建立动态网页所需要的功能。4、 Struts :是一个 MVC(ModelViewController) 框架,用于快速开发JAVAWEB

10、 应用。 Struts 实现的重点在 C(Controller) ,包括 ActionServlet/RequestProcessor 和开发人员定制的Action ,也为V(View)提供了一系列定制标签 (Custom Tag)。Struts 没有涉及M(Model),所以Struts 可以调用JAVA实现的任何形式的业务逻辑组件。5、 Portal :是一种 WEB 应用,通常用来提供个性化、单点登录、聚集各个信息源的容,并作为信息系统表现层的宿主。 Portal 由如下三个部分组成:(1) Portal Server:一个 Portal Server 就是指一个 Web-based 系

11、统,通常都会提供个人化设置、单点登录、以及将各种不同来源的信息放在网页之中组合后呈现的功能,门户会根据个性化设置提供定制的网页,不同的使用者浏览页面将获得不同的容。(2) Portlet Container:是提供 Portlet 执行的环境,包含了许多Portlet 并且管理其生命周期。一个Portlet Container 接收到来自Portal 的请求后,将这个请求传递给存在Container 中的 Portlet 执行。 Portal Server 和 PortletContainer 可以放在一起视为同一个系统的组件或者分开成为两个独立的组件。(3) Portlet :Portlet

12、 是基于 JAVA 的 WEB 组件,由 Portlet 容器管理,并由容器处理请求,生成动态容。 Port al 使用 Portlet 作为可插拔的用户接口组件,提供信息系统的表示层。6、JSR168(Java Standardization Request 168):定义了一个 Portlet 的规,包括 Portlet 容器和 Portlet 之间的合约。 JSR168 由 JCP(Java Community Process)定义。三、业务层业务层是整个架构中最核心的分层,由应用服务器及其组件构成,主要用于处理业务逻辑。业务层引入了基于组件开发的Spring 开源框架,采用WebSer

13、vice 与 JavaBean等技术实现,具有良好的稳定性和可靠性,降低了系统开发复杂度、提高了开发效率,支持所有的J2EE 应用服务器 (包括 JBoss ApplicationServer、 IBMWebSphere ApplicationServer 与 BEA WeblogicApplicationServer)。1、 JavaBean :是一种JAVA语言写成的可重用组件,是一种JAVA类,通过封装属性和方法成为具有某种功能或者处理某个业务逻辑的对象,其他JAVA类可以通过自省机制发现和操作JavaBean的属性。JavaBean具有以下特点:可以重复使用;易编写、易维护、易使用;可

14、以在任何安装了JAVA运行环境的平台上的使用,而不需要重新编译。2、EJB(Enterprise Java Beans):是企业级 JavaBean,是 JAVA 的核心代码,用于开发基于组件的企业应用程序。 EJB 包括 Session Bean(会话 Bean) 、Entity Bean(实体 Bean)和 MessageDriven Bean(消息驱动 Bean)。(1) Session Bean 用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当接收到客户端请求时,容器就会选择一个 Session Bean 来为客户端服务。 Session Bean 可以直接访问数据库,但更多

15、时候,它会通过EntityBean 实现数据访问。(2) EntityBean 用于实现 O/R(Object/Relationl) 映射,负责将数据库中的表记录映射为存中的Entity 对象,创建一个 Entity Bean 对象相当于新增一条记录,删除一个EntityBean 会同时从数据库中删除相应记录,修改一个 Entity Bean 时,容器会自动将 Entity Bean 的状态和数据库同步。(3) MessageDriven Bean(MDB) 用于接收客户端发送的JMS(Java Message Service)消息然后做相应的处理。MDB实际上是一个异步的无状态Session

16、 Bean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。MDB适用于需要异步处理请求的场合,避免客户端长时间的等待一个方法调用直到返回结果。3、WebService :是建立可互操作的分布式应用程序的新平台,作为一套标准,它定义了应用程序如何在WEB 上实现互操作性。4、 Spring :是一个开源框架,由Rod Johnson创建,用以解决企业应用开发的复杂性。Spring 使用基本的JavaBean 来完成以前只可能由EJB 完成的事情。5、POJO(PlainOldJava Object) :是一类规则的、 易组合的、 运行于EJB 容器之外且不依赖于EJB 的对象。

17、四、集成层集成层是整个架构中十分重要的分层,由若干接口组件和服务构成,主要用于集成学校的各类应用( 系统、服务和数据 ),实现各个应用之间互联互通。集成层引入了优秀的Hibernate 开源框架, 用于建立对象模型与关系模型的映射、持久化业务对象, 支持各种流行的数据库管理系统(Oracle、 SQL Server、 DB2 等);使用 JNDI ,用于集成基于目录服务的应用;使用JavaMail ,用于集成系统;使用JMS,用于集成基于消息中间件的应用。1、Hibernate :是一个开放源代码的对象关系映射框架,它对 JDBC(Java Data Base Connectivity) 进行

18、了非常轻量级的对象封装,使得JAVA 程序员可以随心所欲地使用面向对象的编程思想来操纵数据库。Hibernate 可以应用在任何使用JDBC 的场合,既可以在JAVA 的客户端程序中使用,也可以在Servlet/JSP 的 WEB 应用中使用。2、JNDI(JavaNamingand DirectoryInterface) :即 JAVA 命名与目录接口。 JNDI 提供统一的客户端API,通过不同的访问提供者接口SPI(Service Provider Interface)实现,由管理者将 JNDIAPI 映射为特定的命名服务和目录系统,使得JAVA应用程序可以和这些命名服务和目录服务之间进

19、行交互。JNDI 可访问的目录服务有:DNS(DomainName System)、Xnam( 一种开源的目录服务)、Novell 目录服务、 LDAP(Lightweight Directory Access Protocol)、CORBA(Common Object Request Broker Architecture) 对象服务、文件系统、 Windows 注册表、 RMI(Remote Method Invocation) 和 NIS(Network Information Service) 。JNDI 具有如下优点:(1) 包含了大量的命名和目录服务,使用通用接口来访问不同种类的服

20、务;(2) 可以同时连接到多个命名和目录服务上;(3) 允许把名称同 JAVA 对象或资源关联起来,而不必知道对象或资源的物理标识。类,不仅支持SMTP(SimpleMailTransfer Protocol) 服务器,也支持IMAP(InternetMessage Access Protocol )服务器。JavaMail利用 JAF(JavaBeans ActivationFramework) 来处理 MIME(Multi-purposeInternet MailExtensions)编码的附件; MIME的字节流可以与JAVA对象相互转换。4、JMS(JavaMessage Servic

21、e) :是一组 JAVA 应用程序接口,提供创建、发送、接收、读取消息的服务。MS 是一种与厂商无关的API ,用来访问消息收发系统( 消息中间件 )。许多厂商目前都支持JMS,包括IBMJ的MQSeries、BEA的 WeblogicJMS Service 等。JMS 能够通过消息收发服务从一个JMS 客户机向另一个JMS 客户机发送消息。消息是JMS 中的一种类型对象,由两个部分组成:报头和消息主体。报头由路由信息以及有关该消息的元数据组成。消息主体则携带着应用程序的数据或有效负载。根据有效负载的类型,可以将消息划分为:简单文本(TextMessage)、可序列化的对象 (ObjectMe

22、ssage)、属性集合 (MapMessage)、字节流 (BytesMessage)、原始值流 (StreamMessage)和无有效负载的消息 (Message)。消息收发系统是异步的,即 JMS 客户机可以发送消息而不必等待回应。这完全不同于基于RPC(Remote Procedure Call) 的系统,如 EJB、CORBA 和 JAVA RMI 等。在 RPC 中,客户机调用服务器上某个分布式对象的一个方法,在方法调用返回之前,该客户机被阻塞;该客户机在可以执行下一条指令之前,必须等待方法调用结束。在 JMS 中,客户机将消息发送给一个虚拟通道 (主题或队列 ) ,而其它 JMS 客户机则预订或监听这个虚拟通道,当 JMS 客户机发送消息时,它并不等待回应,它执行发送操作,然后继续执行下一条指令。消息可能最终转发到一个或许多个客户机,这些客户机都不需要作出回应。JMS 的通用接口集合以异步方式发送或接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论