鉴于两层结构(C/S)在设计和应用的局限性,通过将复杂的业务数据处理提出,将系统的逻辑结构和物理结构分离,形成三层结构的客户\\服务器结构,运用基于组件的分布式技术,从结构上就避免两层结构的局限性。三层结构具体内涵如下:
1 用户服务(客户层)
用户服务层是应用系统的用户接口部分,是用户与系统间交互信息的窗口。它的主要功能是检查用户输入的数据,显示系统输出的数据。
如果用户服务层需要修改时,只需改写显示控制和数据校验程序,而不影响其他两层。检查的内容也只限于数据格式和取值范围,不包括有关业务本身的处理逻辑。
该层是浏览器。 2 商业服务(中间层)
崭新的一层是商业服务层,它是应用的主体,它包括了应用中全部的业务处理程 序。除了输入/输出在用户服务层、数据库在数据服务层外,全部的统计、汇总、分析、打印功能全部封装在商业服务层。
中间层一方面起传递数据作用,一方面进行强大的数据处理。该层还承担安全性检查的任务。
3 数据服务(数据库)
数据服务层就是数据库管理系统(DBMS),负责管理对数据库数据的读写。DBMS能迅速执行大量的数据的更新和检索。一般商业服务层通过发送SQL命令来操作数据库的数据。
B/S结构中数据存取的工作过程
从基于Web应用系统应用功能划分体系结构来看,应用系统的显示和数据表示及用户交互界面等部分在浏览器端完成;应用处理逻辑及表示、解释在Web应用服务器处理,服务器提供的服务主要包括查询、更新、事务管理、索引、高速缓存、查询优化、安全及多用户存取控制等。而数据存取管理、完整性控制及并发控制等部分在数据库服务器端完成。
用户需要存取数据库,具体将表示为客户应用中的SQL语句,客户端所发出的请求传输到Web应用服务器一端,由应用服务器进行逻辑处理和网络连接,传到了数据库服务器软件,由数据库服务器软件执行SQL语句,实现对数据库的访问,具体的磁盘的输
第 15 页 共 34 页
入/输出再通过应用服务器端的操作系统来完成。从数据库取得的结果数据,将按反方向送回给浏览器用户。
三层结构技术有如下关键特性:
规则的封装,三层结构软件的中间层是封装了商务规则的组件。商务业务是一种比较规范化和标准化的流程,分析其整个过程,可以将不同项目建立成不同的对象,根据其涉及的数据和处理流程设计成属性、方法并独立封装,使工作对象化。这样,又可分析行业的特性,根据不同的行业特性制定不同类别的对象,如:由于行业的不同,制定不同行业的资产负债表等报表对象,用户可在安装时选择适合的构件。另外,可以根据用户具体的需求设计特定的组件,替换标准件即可为用户量体裁衣。
面向对象编程,组件技术实际上就是实施面向对象的编程,将逻辑对象程序化,无需再次编写程序。
采用高性能的DBMS数据库,三层结构的软件采用高性能的DBMS数据库,DBMS数据库是在服务器上运行的强大数据库引擎,拥有自己的CPU,管理服务器内存和磁盘读写操作,数据处理功能完善,支持标准的外部查询语言SQL。
三层结构支持市场上流行的DBMS数据库系统,并且软件系统易于在各数据系统之间进行移植,这样真正做到数据和程序完全独立。值得强调的一点,三层结构软件将支持同时使用一种数据源。
可扩展的集成开发能力,三层结构软件由于采用组件化开发,内部结构松散与逻辑紧密结合,将此组件向用户开放,提供简单调用接口,用户或二次开发商可以在自己的应用程序中调用该组件,就可将现有或正在研发的信息系统与系统连接起来,这一点将证明三层结构技术将具有相当的应用价值。
5.4.2 J2EE技术框架
随着Java语言的日益流行,特别是Java与Internet Web的密切结合,使它在全球取得了巨大的成功。Java语言以其独立于平台、面向对象、分布式、多线索及完善的安全机制等特色,成为现代信息系统建设中的良好的应用系统和运行环境。
J2EE 是由 SUN 公司提出的企业级应用规范,该规范已经得到了各大 IT 公司的支持,如 IBM,BEA,Oracle 等,并且已经成为了企业级应用和电子商务的业界标准。
第 16 页 共 34 页
J2EE 提供了一个企业级的计算模型和运行环境用于开发和部署多层体系结构的应用。它通过提供企业计算环境所必需的各种服务,使得部署在 J2EE 平台上的多层应用可以实现高可用性、安全性、可扩展性和可靠性。它的优越性在于:计算平台支持 Java 语言,使得基于 J2EE 标准开发的应用可以跨平台地移植;Java 语言非常安全、严格,这使开发者可以编写出非常可靠的代码;J2EE 提供了企业计算中需要的所有服务,且更加易用:J2EE 中多数标准定义了接口,例如 JNDI、JDBC、Java Mail 等,因此可以和许多厂商的产品配合,容易得到广泛的支持;J2EE 树立了一个广泛而通用的标准,大大简化了应用开发和移植过程。
提供这些服务的应用程序必须将已有的信息系统与能将服务分布到一个很大的范围的新特征结合起来。这些服务包括: ? 易访问性 适应如今的全球经济环境 ? 安全性 保护用户数据与企业数据的完整性 ? 可靠性及伸缩性 保证准确及快速的商业事务
由于各种原因,这类服务一般设计为多层的分布式的应用,包括前端的客户端,后端的数据资源,在此二者之间的主要的应用开发的一个或更多的中间层。中间层实现了使用业务功能与数据整合已有的 EIS 新的服务。中间层使用了迅速成熟的 Internet 技术来的优点,最小化用户管理和培训,并且将客户层与企业复杂性分离。
J2EE 降低了开发多层服务的成本和复杂性,并使企业面对竞争压力能够迅速部署和增强服务。
选择Java技术作为我们面向组件开发的首选技术是基于它的跨平台特性和可重用性。JavaBean提供了很好的组件模型,它可以用在任何支持J2EE操作系统和应用服务器上。Enterprise JavaBeans(EJB)标准使开发组可以集中于商业逻辑的开发,将其封装入不同的JavaBean中,由EJB负责所有的企业级服务,如:同步、持久性、事务管理、命名服务、对象分布和资源管理。基于EJB的应用系统具有安全性、机动性、可伸缩性和跨平台性。
其特点为:
? 采用先进的交互式网上应用技术 ? 采用因特网自动发布信息流
? 不采用任何封闭的专用开发工具,避免由此引起的系统不兼容等问题;
第 17 页 共 34 页
? 遵循先进性、实用性、开放性、稳定性、安全性原则; ? 跟随国际IT领先公司的技术发展路线;
? 可以根据需要方便、快速的开发出各种新的网上应用系统; ? 整个系统采用组件化设计,为系统功能扩展留下足够的空间; ? 适宜建设电子政务门户网站,以此为基础延伸整个系统的各种功能; ? 可以开发完善的电子政务平台,使政府具有多种网上办公功能;
5.4.3 Web Service 技术实现系统跨平台
系统开发技术路线将会采用基于XML和Web Service的异构系统综合服务解决方案。从而解决系统的跨平台问题。Web Service 是在 Internet和 Intranet 上进行分布式计算的基本构造块。开放的标准以及对用户和应用程序之间的通信和协作的关注产生了这样一种环境,在这种环境下,Web Service 成为应用程序集成的平台。应用程序是通过使用多个不同来源的Web Service 构造而成的,这些服务相互协同工作,而不管它们位于何处或者如何实现。
Web Service技术及其相关技术体系,包括XML、SOAP、WSDL、UDDI等。WebService 是一种新的web应用程序分支,他们是自包含、自描述、模块化的应用,可以发布、定位、通过web调用。一旦部署以后,其他Web Service应用程序可以发现并调用它部署的服务。
使用Web Service技术,系统能够实现自身的业务流程和处理功能组件化,这些服务组件可在Internet/Intranet上发布,从而方便的被其它部门所使用,以便应用到跨部门的业务中去。这些Web Service组件的开发并不影响现有内部系统的结构和数据,从而极大地保护了现有的投资。而通过集成原有系统提供的Web Service服务组件,就可以在互联网上建立统一的政府的门户站点,向社会提供闭环式服务,从而形成基于Web Service的电子政务一站式服务架构。
这为有效解决了当前政府信息建设中的“信息孤岛”问题提供了一个切实可行的方法。
第 18 页 共 34 页
5.4.4 利用XML作为系统接口的数据交换标准
XML数据传输是不同系统之间日渐流行的标准数据传输方式,由于与平台和编程语言的无关性,因此,通过XML可以有效保证对各种异构系统的数据接口需要,以达到政府各系统数据资源的最优整合。
XML适于异构应用间的数据共享。
XML的灵活性和扩展性使其可以对不同应用甚至是差异很大的应用间的数据进行描述,尤其是对于那些专用于记录数据的应用。另外,XML具有自我描述的特性,结果是数据可以在不同的应用间进行交换与处理而不必要求相应的应用程序是针对该数据定制的。
用于强大的数据检索,XML属于元标记语言,进一步讲,根据这一特性,用户只要在XML的文档类型定义文件中定义一系列有意义的标记,这样基于该文档类型定义文件所产生的XML文档就可以按照任意的条件进行查询和检索,甚至实现计算机自动检索,而相应的检索引擎可以是通用的而不必局限于具体的应用。
提供多语种支持,XML规范中提供了对多语种的支持,包括UTF-7、UFT-8、UNICODE、GB2312(简体中文)、BIG5(繁体中文)等等,这一特点使得XML非常有利于多语种的应用开发。
5.5 应用系统开发模式
第 19 页 共 34 页