实际项目:基于xml的数据交换平台!欢迎参加讨论!

来源:互联网 发布:移动端价格区间滑块js 编辑:程序博客网 时间:2024/06/05 10:35

下面事简单的需求说明和提炼:

1)数据交换系统结构图

数据交换系统结构

数据交换系统结构如图1所示。数据交换系统主要包括数据交换中心(平台)和数据交换代理两大要素。

1)  数据交换中心

数据交换中心是全省数据交换系统的交换数据存储中心和交换事务控制中心。

²          数据交换控制台

数据交换控制台是数据交换系统的控制中心,管理所有交换用户(单位)信息、单位权限、收发关系,定义用户组、组成员,定义全省业务数据(公文是其中一类)交换标准模版并发布,以及服务器定位等辅助功能。对各个单位交换记录进行监管。数据交换控制台采用组件式结构设计,即控制台由各类不同功能组件搭建而成,

²          数据交换服务

数据交换系统提供一系列高度封装的web服务接口,供电子政务系统和市、县异构系统调用,实现外单位与本级交换数据库之间的数据上传、下载等功能。

²          交换数据库

交换数据库存储本级与外部交换的业务数据,以及与交换平台本身相关的统一发布的各类业务数据交换标准、交换用户(单位)数据、权限数据和日志数据等。其中,交换单位信息需与内网电子政务系统中的单位信息保持一致或关联对应,以保证内部电子政务系统可以自动“寻址”,选择发送单位。

2)  数据交换代理

数据交换代理是封装了数据加密、解密、压缩、解压、断点续传等功能的插件式小程序,很容易嵌入到电子政务系统或其他异构应用系统中,完成电子政务系统与数据交换系统之间互传数据所必需的一些数据预处理或后处理工作。

数据交换系统担负起交换各类业务数据的重任,所以系统设计与业务无关,而是建立了全部的数据交换体系框架,提供了一种通用的数据交换通道。公文数据将是在本数据交换系统中正式交换的第一类数据,将来随着电子政务系统应用面的扩大,相应的业务数据交换,只要制定业务数据交换内容标准,就能纳入本数据交换系统中进行数据交换。

(1)  数据交换标准

数据交换系统采用标准的XML格式作为各类业务数据交换内容的通用表现形式,每类业务根据本业务规范制定统一的业务数据交换内容标准,数据发送方按照该标准来组织交换数据包,并交由数据交换系统将数据包发送到目的地,数据接收方也是按照该交换内容标准来解析所接收到的数据包。

制定统一的公文数据交换标准也是本项目的任务之一。关于公文交换标准,国家具有相关规定,我们要在符合国家规定的基础上考虑标准的扩展性。交换标准确定后,在数据交换平台中定义相应的XML模版,并通过数据交换平台统一下方到各个用户单位。

 

目前整个项目还是处于方案设计当中!

在基于XML的数据交换平台中,笔者目前认为最重要的问题就是xml的存储和提取的问题!即xml文件从客户端传到应用服务器时,如何存到数据库中!假设存好后,如何从数据库中把信息给读取出来!

一。存储的方式有两种:

(1)    xml格式存储数据对象

Oracle支持XMLType一种新的对象类型!XMLType具有成员函数,提供了创建,提取和索引XML数据的强大机制。

用户可以使用SQL函数,SYS_XMLGEN,SYS_XMLAGG PL/SQLDBMS_XMLAGG动态生成xml文档!

Advantage: 提供高效率原生 XML 存储功能!

Qusetion(1) 强大灵活的对XML的提取,索引,修改,查找的功能!

(2)    以相关联的二维表的形式存储!

通过模板映射,模式映射等算法将xml文档分解成多个相互关联的表!

Advantage:(1)适合于任何关系型数据库,不特定依靠数据库厂商提供的接口!只要符合标准的SQL语言都可以实现这样的方法!

Qusetion(1) RDBMS 需要将一个 XML 文档分解成多个相互关联的表。而且对数据库的查询可能导致许多相关联的检索和联合操作,需要系统具有极高的处理能力以避免引起性能明显下降。

二.对数据库的操作(JDBCPL/SQL

JDBC 为访问多种关系型数据库提供了统一的访问接口!

PL/SQL提供了包,过程,函数,控制语句,对象类型方法,错误处理,集合,游标等这些概念,快速的对数据库进行操作!

两者区别:(1JDBC适合于在服务器端对客户端传来的业务数据进行处理,比如:往销售记录数据库里插入一条销售记录!灵活性好!

PL/SQL适合与批量的数据交换,如:电信行业业务数据的转移!效率高!

 (2) 对于远程数据发送,或者异构系统之间的数据交换用jdbc

PL/SQL 比较适合在应用服务器端,对数据库服务器数据操作!

 
原创粉丝点击