一种分布式应用处理系统数据同步处理方法转让专利

申请号 : CN201110001360.X

文献号 : CN102123036A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张春阳刘勇李宝元王志强宋晓莉高延民牛丹梅肖春宝赵海霞

申请人 : 河南科技大学

摘要 :

一种分布式应用处理系统数据同步处理方法,涉及离线分布式应用处理系统中的数据处理方法。建立引导数据同步处理的电子通知机制,对每一个系统用例定义一个电子通知;对系统的客户端设定基于命令模式的本地数据提取器,一个提取类对应一个电子通知;业务单位进行业务处理后生成带有编号的电子通知,利用电子通知提供的信息通过数据传输层进行业务数据上传处理,并产生面向业务对口单位的新的电子通知供其下载,通过检测电子通知的发送成功标志置和对比电子通知编号建立防止重复传输的处理机制。本地数据的提取和服务器端业务数据的处理通过引入命令模式形成标准的编程框架,可以方便地进行业务处理同步功能的扩充,实现业务数据的网内同步。

权利要求 :

1.一种分布式应用处理系统数据同步处理方法,其特征在于:建立引导数据同步处理的电子通知机制,对每一个系统用例都定义一个电子通知,电子通知中包含业务处理信息的标志记录和事务单据的凭证号码;对系统的客户端设定基于命令模式的本地数据提取器,一个提取类对应一个电子通知;数据同步处理方法为:(1)、业务单位进行业务处理后生成相应的带有编号的电子通知;

(2)、业务单位客户端根据电子通知的类别确定相应的客户端数据提取器;

(3)、客户端数据提取器根据电子通知中的事务单据的凭证号码得到领域对象;

(4)、由领域对象将业务信息形成可传输的业务数据字符串;

(5)、通过数据传输层将业务数据字符串和相应的电子通知传输到服务器端,传输完成后将电子通知的发送成功标志置真;

(6)、服务器端收到客户端传递过来的业务数据字符串和电子通知后,将该电子通知的编号与服务器端保存的电子通知编号对比,如编号相同则直接返回信息通知客户端将发送电子通知的发送成功标志置真;如编号不同则进行下步操作;

(7)、保存电子通知及相应的业务信息,根据电子通知类别确定服务器端处理器对象;

(8)、将业务数据字符串和电子通知传递给处理器对象,处理器对象利用领域对象的字符串构造函数将字符串反解析还原成领域对象;

(9)、利用领域对象进行服务器端的业务处理,同时生成面向业务对口单位的新的电子通知;

(10)、业务对口单位通过数据传输层从服务器端下载电子通知及对应的业务数据。

2.如权利要求1所述的一种分布式应用处理系统数据同步处理方法,其特征在于:所述的数据传输层为基于代理模式的可插接的数据传输层。

3.如权利要求1所述的一种分布式应用处理系统数据同步处理方法,其特征在于:所述的服务器端设有基于命令模式的服务器端数据处理器。

4.如权利要求1所述的一种分布式应用处理系统数据同步处理方法,其特征在于:所述的基于命令模式的本地数据提取器,设定一个提取器命令接口,每一个提取器设置为一个命令对象,并且与一个领域对象相关联。

5.如权利要求1所述的一种分布式应用处理系统数据同步处理方法,其特征在于:所述的电子通知与对应用例的事务数据及处理逻辑相对应。

说明书 :

一种分布式应用处理系统数据同步处理方法

技术领域

[0001] 本发明涉及离线分布式应用处理系统中的数据处理方法,具体地说是一种分布式应用处理系统数据同步处理方法。

背景技术

[0002] 对于离线分布式应用处理系统,网络内各工作站拥有本地数据库,以支持离线运行。只有在需要的时候才和中心服务器进行业务数据的上传和下载的数据同步处理。本地办理的业务数据处理上传到服务器数据库进行保存和备份之外,还要通过中心服务器向业务对口单位进行数据的传输。根据工作站所处地域的不同或者受到地理位置的限制,网络传输的方式可能是拨号传输、互联网,或者是无线网络传输,甚至可能通过U盘进行传输。这就要求实现的框架能够灵活地支持多种传输方式。业务数据的网内传输会涉及到业务处理的规则,如果一业务一处理势必增加编程的工作量,而且不利于维护和功能扩充。当开发一个复杂的系统时,因系统用例数量大造成数据同步的编程工作量增加,需要很多的程序员参与才能保证进度,增加了项目管理的工作量。如果有一个二次开发平台,就可以规范程序员的编程行为,加快开发速度。

发明内容

[0003] 本发明所要解决的技术问题是提供一种分布式应用处理系统数据同步处理方法,支持多种网络传输方式,可以方便地进行业务处理同步功能的扩充,实现业务数据的网内同步。
[0004] 本发明为解决上述技术问题所采用的技术方案是:一种分布式应用处理系统数据同步处理方法,建立引导数据同步处理的电子通知机制,对每一个系统用例都定义一个电子通知,电子通知中包含业务处理信息的标志记录和事务单据的凭证号码;对系统的客户端设定基于命令模式的本地数据提取器,一个提取类对应一个电子通知;数据同步处理方法为:(1)、业务单位进行业务处理后生成相应的带有编号的电子通知;
(2)、业务单位客户端根据电子通知的类别确定相应的客户端数据提取器;
(3)、客户端数据提取器根据电子通知中的事务单据的凭证号码得到领域对象;
(4)、由领域对象将业务信息形成可传输的业务数据字符串;
(5)、通过数据传输层将业务数据字符串和相应的电子通知传输到服务器端,传输完成后将电子通知的发送成功标志置真;
(6)、服务器端收到客户端传递过来的业务数据字符串和电子通知后,将该电子通知的编号与服务器端保存的电子通知编号对比,如编号相同则直接返回信息通知客户端将发送电子通知的发送成功标志置真;如编号不同则进行下步操作;
(7)、保存电子通知及相应的业务信息,根据电子通知类别确定服务器端处理器对象;
(8)、将业务数据字符串和电子通知传递给处理器对象,处理器对象利用领域对象的字符串构造函数将字符串反解析还原成领域对象;
(9)、利用领域对象进行服务器端的业务处理,同时生成面向业务对口单位的新的电子通知;
(10)、业务对口单位通过数据传输层从服务器端下载电子通知及对应的业务数据。
[0005] 所述的数据传输层为基于代理模式的可插接的数据传输层。
[0006] 所述的服务器端设有基于命令模式的服务器端数据处理器。
[0007] 所述的基于命令模式的本地数据提取器,设定一个提取器命令接口,每一个提取器设置为一个命令对象,并且与一个领域对象相关联。
[0008] 所述的电子通知与对应用例的事务数据及处理逻辑相对应。
[0009] 本发明的有益效果是:本发明建立一种引导数据同步处理的电子通知机制,定义基于命令模式的本地数据提取器和基于命令模式的服务器端数据处理器,并抽象出一个传输层,构成系统数据同步处理框架。框架利用电子通知提供的信息进行业务数据上传处理,并产生面向业务对口单位的新的电子通知供其下载,通过检测电子通知的发送成功标志置和对比电子通知编号建立一种防止重复传输的处理机制。为了支持多种传输方式,框架抽象出一个传输层,该传输层采用代理模式和接口编程,实现传输方式的动态插接。本地数据的提取和服务器端业务数据的处理通过引入命令模式形成标准的编程框架,可以方便地进行业务处理同步功能的扩充,实现业务数据的网内同步。为了方便编程实施,给出一种领域类设计机制,使得早期的领域设计能够和同步框架协调的更好。

附图说明

[0010] 图1是本发明中建立的框架类图。
[0011] 图2是本发明中客户端处理顺序图。
[0012] 图3是本发明中服务器端处理顺序图。

具体实施方式

[0013] 一种分布式应用处理系统数据同步处理方法,通过建立一种引导数据同步处理的电子通知机制,定义基于命令模式的本地数据提取器和基于命令模式的服务器端数据处理器,并抽象出一个传输层,构成系统数据同步处理框架。框架建立一种引导数据同步处理的电子通知机制,对每一个系统用例都定义一个电子通知,电子通知与对应用例的事务数据及处理逻辑相对应。电子通知中包含业务处理信息的标志记录和事务单据的凭证号码,电子通知代表了那个单位什么时候对谁办理了什么业务,这些信息可以指导数据同步框架进行自动同步处理。框架对系统的客户端设定基于命令模式的本地数据提取器,实现从本地数据库中提取上传业务数据的功能,并且一个提取类对应一个电子通知。基于命令模式的本地数据提取器,设定一个提取器命令接口,每一个提取器设置为一个命令对象,并且与一个领域对象相关联。命令对象向领域对象DAO对象发消息,根据凭证号码提取领域对象,并由领域对象的方法toString()转换为直接传输的字符串。
[0014] 数据同步处理方法为:(1)、业务单位进行业务处理后生成相应的带有编号的电子通知;
(2)、业务单位客户端根据电子通知的类别确定相应的客户端数据提取器;
(3)、客户端数据提取器根据电子通知中的事务单据的凭证号码得到领域对象;
(4)、由领域对象将业务信息形成可传输的业务数据字符串;
(5)、通过数据传输层将业务数据字符串和相应的电子通知传输到服务器端,传输完成后将电子通知的发送成功标志置真,标志置真后即表示该电子通知已成功发送,客户端不会重复发送已发过的电子通知;
(6)、服务器端收到客户端传递过来的业务数据字符串和电子通知后,将该电子通知的编号与服务器端保存的电子通知编号对比,如编号相同则直接返回信息通知客户端将发送电子通知的发送成功标志置真,对此电子通知服务器端不进行业务处理;如编号不同则进行下步操作;
(7)、保存电子通知及相应的业务信息,根据电子通知类别确定服务器端处理器对象;
(8)、将业务数据字符串和电子通知传递给处理器对象,处理器对象利用领域对象的字符串构造函数将字符串反解析还原成领域对象;
(9)、利用领域对象进行服务器端的业务处理,同时生成面向业务对口单位的新的电子通知;
(10)、业务对口单位通过数据传输层从服务器端下载电子通知及对应的业务数据。
[0015] 在系统的数据处理中,通常来说客户端成功发送的电子通知,其发送成功标志会置真。但是由于网络或者其它系统原因,可能来不及置真,下次还会重复发送,造成重传。在服务器端保存电子通知编号作为检查重复的依据。每次上传处理时如果检查到有相同的电子通知编号,说明已经传输过了,直接成功返回,通知客户端将发送电子通知的发送成功标志置真。
[0016] 所述的数据传输层为基于代理模式的可插接的数据传输层,为了支持多种传输机制,利用代理模式借助于接口编程将传输层以可插接的形式封装,利用代理模式进行类的组织,借助于接口编程实现传输层的可插接性。
[0017] 所述的服务器端设有基于命令模式的服务器端数据处理器,从本地上传到服务器端的业务数据,需要通过反解析还原成领域对象。服务器端的处理流程也以命令模式进行封装。
[0018] 为了提高开发效率,进行配合框架执行的领域设计,通过领域类提取业务数据,领域设计应该能够和数据同步框架相适应。
[0019] 本发明以上级单位为下级单位分配年度指标为例对该方法的实施做出进一步的说明。单位的层次为一个上级单位对应两个平级的下级单位。按照本发明的方法构成的系统数据同步处理框架的框架类图如图1所示。
[0020] 如图2所示,客户端处理的流程如下:(1)、首先根据电子通知编号得到电子通知对象;
(2)、根据电子通知类别获得客户端提取器Fetcher;
(3)、提取器根据电子通知中的凭证号码信息,向领域DAO对象发送消息,得到领域对象;
(4)、由领域对象将业务信息形成可传输的字符串;
(5)向传输层发送信息,请求传输字符串到服务器端。
[0021] 如图3所示,服务器端在得到客户端传递过来的业务数据字符串和电子通知后,服务器端的处理流程如下:(1)、根据电子通知类别得到服务器端处理器对象;
(2)、将业务数据字符串和电子通知传递给处理器对象;
(3)、处理器对象利用领域对象的字符串构造函数,得到领域对象;
(4)、利用领域对象进行服务器端的业务处理。
[0022] 基于本发明构建的系统数据同步处理框架的实现过程如下:客户端程序的实现:
(1)、设计分配文件夹类PlanAssigner,是从Bill类继承得到的子类;
(2)、设计PlanAssigner类的DAO类:PlanAssignerDAO,用来对分配文件进行持久化处理;
(3)、实现PlanAssigner的方法toString(),将对象属性形成一个可以分割还原的字符串;
(4)、实现PlanAssigner的构造函数,根据字符串进行构造;
(5)、为分配文件定义电子通知F010;
(6)、设计F010的客户端提取器类F001Fetcher,该类实现接口IFetcher;
(7)、补充Fetcher工厂类FetcherFactory,增加对F010提取器的构造;
到此,借助于框架提供的客户端处理功能,就实现了F010的客户端提取功能。
[0023] 服务器端程序实现:(1)、设计服务器端处理器类F010SHandler,该类实现了接口ISHandler;
(2)、补充SHandler工厂类SHandlerFactory,增加对F010处理器的构造;
到此,借助于框架提供的服务器端处理器功能,就实现了F010的服务器端业务处理功能。
[0024] 本发明未述部分与现有技术相同。