一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据同步方法、同步装置、计算机设备及存储介质与流程

2022-12-31 15:29:20 来源:中国专利 TAG:


1.本发明涉及大数据应用技术领域,更具体地说,涉及一种数据同步方法、同步装置、计算机设备及存储介质。


背景技术:

2.现有的数据同步技术方案中,可以实现不同系统数据库间的数据同步,但是不够稳定、高效以及低代码开发量。在相关技术中,不同系统数据库间的数据同步需要建立属性映射关系,受到不同系统数据库属性的影响需要单独开发代码,且这种数据同步技术往往受限于具体的系统数据库,需要利用数据库本身的特性进行数据同步,例如数据库本身触发器、存储过程等工具,以及利用数据库自身的日志做同步处理;因此,会造成数据同步与数据库有强相关关系,不方便系统数据库迭代、替换和数据同步,增加支持其他系统数据库的难度和较大的代码开发量。因此,如何稳定、高效地实现不同系统数据库之间的数据同步,以及减少由于不同系统间的数据同步字段变化所带来的代码开发量成为亟待解决的问题。


技术实现要素:

3.为解决现有数据同步技术中所存在的问题,本发明提供一种数据同步方法、同步装置、计算机设备及存储介质。
4.本发明解决其技术问题所采用的技术方案是:提供一种数据同步方法,其特征在于,包括:
5.s1、获取第三方系统的目标数据;
6.s2、读取所述第三方系统目标数据的属性和数据;
7.s3、根据所述目标数据的属性和数据,配置对应所述目标数据的属性和数据的映射规则文件;
8.s4、根据所述目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对所述目标数据进行对应的操作。
9.优选地,所述目标数据的属性包括:
10.所述目标数据的字典内容;
11.所述目标数据的关联关系;
12.所述目标数据的数据类型。
13.优选地,所述步骤s3包括以下步骤:
14.s3-1:配置所述目标数据的映射规则xml文件整体结构片段,用于定义数据传输规则以及文件传输属性;
15.s3-2:根据所述目标数据的数据,配置对应所述目标数据的数据的xml数据模板,用于将所述目标数据的数据读取到xml数据模板中对应的位置;
16.s3-3:根据所述目标数据的字典内容,配置对应所述目标数据的字典内容的映射
规则xml文件片段,用于存储具有映射关系的所述目标数据;
17.s3-4:根据所述目标数据的关联关系,配置对应所述目标数据的关联关系的映射规则xml文件片段,用于根据所述目标数据的关联关系查询与所述目标数据关联的多种所述目标数据结果;
18.s3-5:根据所述目标数据的数据类型,配置对应所述目标数据的同步范围的映射规则xml文件片段,用于确定所述目标数据的同步范围以及标记所述目标数据的传输进行状态;
19.所述目标数据的同步范围的映射规则xml文件片段包括:目标数据的第一同步范围片段和目标数据的传递状态值片段;
20.s3-6:联合所述目标数据的数据的xml数据模板和所有所述目标数据的属性的映射规则xml文件片段,结合所述目标数据的映射规则xml文件整体结构片段,形成完整的所述目标数据的属性和数据的映射规则xml文件。
21.优选地,所述数据存储通用方法包括:
22.m1:从所述第三方系统同步数据至所述基于documentum的文档系统的数据存储通用方法;
23.m2:从所述基于documentum的文档系统同步数据至所述第三方系统的数据存储通用方法;
24.m3:从所述第三方系统上传文件至所述基于documentum的文档系统的数据存储通用方法;
25.m4:从所述基于documentum的文档系统上传文件至所述第三方系统的数据存储通用方法。
26.优选地,所述步骤s4包括以下步骤:
27.s4-1:根据所述目标数据的数据的xml数据模板和所述目标数据的属性的映射规则xml文件片段,调用所述数据存储通用方法m1,从所述第三方系统同步所述目标数据至所述基于documentum的文档系统,对同步成功的所述目标数据移入历史数据库,对同步失败的所述目标数据进行重传;
28.所述历史数据库为所述基于documentum的文档系统持久化存储同步成功的所述目标数据的文档数据库;
29.s4-2:根据所述目标数据的映射规则xml文件整体结构片段,调用所述数据存储通用方法m3,从所述第三方系统上传文件至所述基于documentum的文档系统。
30.优选地,所述步骤s3-1包括:
31.根据datatype字段定义的第三方系统数据类型,调用resultmap字段配置对应所述目标数据的同步范围的映射规则xml文件片段;
32.通过所述datatype字段定义第三方系统数据类型和dctmtype字段定义基于documentum的文档系统数据类型,默认均为string类型;
33.根据fileconfig字段定义的文件传输属性,结合所述目标数据的属性和数据的映射规则xml文件片段,对所述目标数据进行对应的操作;
34.所述fileconfig字段定义了文件传输属性,支持ftp、sftp、http、samba等多种传输协议的文件上传;
35.根据resultmap字段配置所述目标数据的属性和数据的映射规则xml文件片段;
36.所述resultmap字段中,id为所述目标数据的属性和数据的映射规则xml文件的唯一标识,result为所述目标数据的属性和数据的映射规则xml文件片段;
37.所述result字段中,column为所述第三方系统数据类型的属性名称,property为所述基于documentum的文档系统数据类型的属性名称。
38.优选地,所述步骤s3-2包括以下步骤:
39.根据读取的所述目标数据的数据,将所述目标数据的数据按照模板格式从第一个数据依顺序填入数据模板对应的位置,直至最后一个数据填入数据模板对应的位置,形成完整的目标数据的数据的xml数据模板。
40.优选地,所述步骤s3-3包括以下步骤:
41.根据所述目标数据的字典内容,调用valuemaps字段配置对应所述目标数据的字典内容的映射规则xml文件片段;
42.所述valuemaps字段包含若干个valuemap字段,根据所述valuemap字段配置对应所述目标数据的字典内容的映射规则;
43.所述valuemap字段中,key为所述第三方系统目标数据的字典内容,value为所述基于documentum的文档系统目标数据的字典内容。
44.优选地,所述步骤s3-4包括以下步骤:
45.根据所述目标数据的关联关系,调用relations字段配置对应所述目标数据的关联关系的映射规则xml文件片段;
46.所述relations字段包含若干个relation字段,根据所述relation字段配置对应所述目标数据的关联关系的映射规则,每种所述目标数据的关联关系存放于一个所述relation字段中;
47.所述relation字段中,name为所述目标数据的关联关系的类型,label为所述目标数据的关联关系的名称,identity为所述目标数据的关联关系的唯一标识。
48.优选地,所述步骤s3-5包括以下步骤:
49.根据所述目标数据的数据类型,调用transrules字段配置对应所述目标数据的同步范围的映射规则xml文件片段;
50.所述transrules字段中,包含whereclause字段,根据所述whereclause字段的所述目标数据的数据类型的查询条件语句,配置对应所述目标数据的第一同步范围的映射规则,所述查询条件语句包含于cdata块中,用于确定所述目标数据的第一同步范围;
51.所述transrules字段中,包含transflag字段,根据所述transflag字段设定所述目标数据的传递状态值,并配置对应所述目标数据的传递状态值的映射规则,用于标记所述目标数据的传输进行状态;
52.所述transrules字段中,name为所述目标数据的同步范围的映射规则的名称;
53.dctmtype字段,定义了传递的所述目标数据的数据类型;
54.batchsize字段,为限制所述目标数据每次传递的最大批次量。
55.优选地,所述步骤s4-1还包括:
56.根据所述目标数据的传递状态值的映射规则,设定定时时间,同步成功的所述目标数据根据所述定时时间移入历史数据库;
57.设定延时时间,对同步失败的所述目标数据进行重传;
58.设定同步失败的所述目标数据重传次数的计数;
59.在所述延时时间内同步失败的所述目标数据没有进行重传;和/或
60.所述同步失败的所述目标数据重传次数的计数达到10次,对同步失败的所述目标数据进行不覆盖重传;和/或
61.对同步失败的所述目标数据进行覆盖重传;和/或
62.根据所述第三方系统目标数据的属性和数据重新配置对应目标数据的属性和数据的映射规则xml文件。
63.本发明还提供一种数据同步装置,应用以上任一所述的数据同步方法,其特征在于,所述数据同步装置包括:
64.获取单元,用于获取所述第三方系统的目标数据,并读取所述目标数据的属性和数据;
65.配置单元,用于根据所述目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
66.同步单元,用于根据所述目标数据的属性和数据的映射规则文件,调用所述数据存储通用方法,对所述目标数据进行对应的操作。
67.优选地,所述数据同步装置还包括:
68.存储单元,用于存储获取到的所述第三方系统的目标数据的数据和配置的对应所述目标数据的属性和数据的映射规则文件;
69.所述获取单元还包括:
70.第一获取子单元:用于读取所述目标数据的数据;
71.第二获取子单元:用于读取所述目标数据的字典内容;
72.第三获取子单元:用于读取所述目标数据的关联关系;
73.第四获取子单元:用于读取所述目标数据的数据类型。
74.优选地,所述配置单元还包括:
75.第一配置子单元:用于配置所述目标数据的映射规则xml文件整体结构片段;
76.第二配置子单元:用于根据所述目标数据的数据,配置对应所述目标数据的数据的xml数据模板;
77.第三配置子单元:用于根据所述目标数据的字典内容,配置对应所述目标数据字典内容的映射规则xml文件片段;
78.第四配置子单元:用于根据所述目标数据的关联关系,配置对应所述目标数据关联关系的映射规则xml文件片段;
79.第五配置子单元:用于根据所述目标数据的数据类型,配置对应所述目标数据同步范围的映射规则xml文件片段;
80.第六配置子单元:用于联合所述目标数据的数据的xml数据模板和所有所述目标数据的属性的映射规则xml文件片段,结合所述目标数据的映射规则xml文件整体结构片段,形成完整的所述目标数据的属性和内容的映射规则xml文件。
81.优选地,所述数据同步装置还包括:
82.构造单元,用于构造基于documentum文档系统的数据存储通用方法;
83.所述构造单元包括:
84.第一构造子单元,用于构造一种从所述第三方系统同步数据至所述基于documentum文档系统的数据存储通用方法m1;
85.第二构造子单元,用于构造一种从所述基于documentum文档系统同步数据至所述第三方系统的数据存储通用方法m2;
86.第三构造子单元,用于构造一种从所述第三方系统上传文件至所述基于documentum文档系统的数据存储通用方法m3;
87.第四构造子单元,用于构造一种从所述基于documentum文档系统上传文件至所述第三方系统的数据存储通用方法m4。
88.优选地,所述同步单元还包括:
89.第一同步子单元,用于根据所述目标数据的数据的xml数据模板和所述目标数据的属性的映射规则xml文件片段,调用所述数据存储通用方法m1,从所述第三方系统同步所述目标数据至所述基于documentum的文档系统,对同步成功的所述目标数据移入历史数据库,对同步失败的所述目标数据进行重传;
90.第二同步子单元,用于根据所述目标数据的映射规则xml文件整体结构片段,调用所述数据存储通用方法m3,从所述第三方系统上传文件至所述基于documentum的文档系统。
91.优选地,所述第一同步子单元还包括:
92.时间单元,用于设定定时时间,将同步成功的所述目标数据移入历史数据库;
93.用于设定延时时间,对同步失败的所述目标数据进行重传;
94.计数单元,用于设定同步失败的所述目标数据重传次数的计数;
95.判断单元,用于判断在所述延时时间内同步失败的所述目标数据是否有进行重传和/或所述同步失败的所述目标数据重传次数的计数是否达到10次;
96.重传单元,用于在所述延时时间内同步失败的所述目标数据没有进行重传和/或所述同步失败的所述目标数据重传次数的计数达到10次时,对同步失败的所述目标数据进行不覆盖重传;和/或
97.对同步失败的所述目标数据进行覆盖重传;和/或
98.根据所述第三方系统目标数据的属性和数据重新配置对应目标数据的属性和数据的映射规则xml文件。
99.本发明还提供一种计算机设备,其特征在于,包括存储器、处理器和总线,所述存储器中存储有所述处理器可执行的计算机程序,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述计算机程序,以执行权利要求1-11任一项所述方法的步骤。
100.本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序适于处理器进行加载,以执行权利要求1-11任一项所述方法的步骤。
101.实施本发明的技术方案,具有以下有益效果:获取第三方系统的目标数据;读取所述第三方系统目标数据的属性和数据;根据所述目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;根据所述目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对所述目标数据进行对应的操作。通过配置目标数据的映射规则文件
的方式,减少了因接入第三方系统或者第三方系统的数据同步字段变化而产生的代码开发量,以及业务变动产生的代码变更量,稳定高效地实现异构系统之间的数据同步。
附图说明
102.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,以下描述的附图仅示出了本发明的某些实施例,因此不应被看作是对保护范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
103.图1是本发明提供的一种数据同步方法的流程示意图;
104.图2是本发明提供的一种数据同步方法的实施例步骤s3的流程示意图;
105.图3是本发明提供的一种数据同步装置的原理图;
106.图4是本发明提供的一种数据同步装置的逻辑结构图;
107.图5是本发明提供的一种数据同步方法的第三方系统目标数据的实施例的数据图。
具体实施方式
108.为使本发明实施例的目的和优点更加容易地被理解,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅为本发明一部分实施例,而不是全部的实施例,以下在附图中对本发明实施例的详细描述并非限定本发明要求保护的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
109.为使本发明实施例中的技术方案更加清楚、完整地被描述,下面将对本发明实施例中主要使用到的第三方技术进行基本的解释:
110.(1)documentum:一款企业级内容管理基础平台,主要应用于大型工程设计领域,用于企业非结构化数据的存储与利用,也可以将非结构化数据同结构化数据在一个对象上进行存储与利用。
111.(2)xml:一种轻量级数据存储结构,用于本发明提供的数据同步装置实施例的同步计划任务规则的配置和存储、目标数据的属性映射规则的配置和存储、目标数据类型的映射规则的配置和存储、目标数据转发服务规则的配置和存储。
112.(3)java反射机制:是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法;这种动态获取程序信息以及动态调用对象的功能称作为java反射机制。
113.(4)spring boot:一种基于java的后端框架,继承了spring框架原有的优秀特性,通过简化配置来进一步简化了spring应用的初始搭建和开发过程,该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置,此外,spring boot通过集成大量的框架使得依赖包的版本冲突以及引用的不稳定性等问题得到了很好的解决。
114.(5)bootstrap:一种基于html、css、javascript开发的简洁、直观、强悍的前端开发框架,使得web应用程序和网站的开发更加快捷,bootstrap提供了优雅的html和css规范,包含了功能强大的内置组件,易于定制。
115.为便于对本发明实施例进行理解,下面以将一个名为“dts”的第三方系统数据库的一张工程造价表中的数据从该第三方系统同步至基于documentum的文档系统数据库为实施例,对提供的一种数据同步方法的实施加以说明,参见图5所示,该工程造价表名为“dts-pj”,该工程造价表包含了细沙、碎石、水泥、增强剂、钢筋等材料的预报价、报价、最终成交价等数据,图中仅示出了该工程造价表包含的部分材料的部分价格数据用以说明实施例的实施;该数据同步方法应用到其他的第三方系统同步其他数据类型的数据也可以参考该实施例的实施方式。
116.参见图1所示,为本发明提供的一种数据同步方法第一实施例的流程示意图,该实施例的数据同步方法包括以下步骤:
117.s1、获取第三方系统的目标数据;
118.s2、读取第三方系统目标数据的属性和数据;
119.s3、根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
120.s4、根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
121.在本实施例的步骤s1中,获取第三方系统的目标数据。
122.在该步骤中,基于documentum的文档系统接收到第三方系统目标数据需要进行数据同步的信号,启动spring boot后端框架进行数据同步初始化配置,调用setstring,setbool等方法机制,利用java反射机制,获取第三方系统的目标数据,创建对应该第三方系统目标数据的数据的存储文件,并设置基于documentum的文档系统对应该目标数据的数据的存储文件的属性,该存储文件用于存储对应该第三方系统目标数据的数据。
123.在本实施例中,基于documentum的文档系统接收到dts系统要同步工程造价表的数据的信号,启动spring boot后端框架对基于documentum的文档系统数据同步的配置进行初始化,调用setstring,setbool等方法机制,获取dts系统的工程造价表,工程造价表在基于documentum的文档系统存储为工程文件,因此在其数据库中新建一个与dts系统的工程造价表对应的工程文件,名为“dts-pj-copy”,并设置基于documentum的文档系统对应该工程造价表的属性,该工程文件存储该dts系统的工程造价表中的数据。
124.在本实施例的步骤s2中,读取第三方系统目标数据的属性和数据。
125.在该步骤中,在获取第三方系统的目标数据后,该基于documentum的文档系统利用java反射机制,解析之前通过setstring,setbool等方法机制设置好的对应该目标数据的属性,得到第三方系统目标数据的属性,动态读取第三方系统目标数据包含的数据。
126.在本实施例中,在获取dts系统的工程造价表后,基于documentum的文档系统利用java反射机制,解析之前通过setstring,setbool等方法机制设置好的对应该工程造价表的属性,得到dts系统的工程造价表的属性,例如字典内容属性,字典内容中的配料包含了细沙(单位:m3)、碎石(单位:m3)、水泥(单位:吨)、增强剂(单位:kg)、钢筋(单位:吨)等,价格包含了预报价(单位:元)、报价(单位:元)、最终成交价(单位:元)等;动态获取dts系统的工
程造价表包含的数据,例如30、32、28、27、30、25等对应材料的对应预报价、报价以及最终成交价。
127.在本实施例的步骤s3中,根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件。
128.在该步骤中,根据获取到的目标数据,基于documentum的文档系统配置目标数据的映射规则文件整体结构片段,根据读取到的目标数据的属性,配置对应目标数据的属性的映射规则文件片段,根据读取到的目标数据的数据,将目标数据的数据按照模板格式填入对应的位置,配置对应目标数据的数据的数据模板,联合目标数据的数据的数据模板和所有目标数据的属性的映射规则文件片段,结合目标数据的映射规则文件整体结构片段,形成完整的目标数据的属性和数据的映射规则文件。
129.在本实施例中,基于documentum的文档系统根据获取到的工程造价表,配置对应该工程造价表的映射规则文件整体结构片段,根据读取到的dts系统工程造价表的字典内容,配置对应工程造价表的字典内容的映射规则文件片段,根据读取到的dts系统工程造价表的关联关系,配置对应工程造价表的关联关系的映射规则文件片段,根据读取到的dts系统工程造价表的数据类型,配置对应工程造价表的同步范围的映射规则文件片段,根据读取到的dts系统工程造价表的数据,将工程造价表的数据按照模板格式填入对应的位置,以形成对应工程造价表的数据的数据模板,联合工程造价表的数据的数据模板和所有工程造价表的属性的映射规则文件片段,结合工程造价表的映射规则文件整体结构片段,形成完整的工程造价表的属性和数据的映射规则文件。
130.在本实施例的步骤s4中,根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
131.在该步骤中,如图3所示,基于documentum的文档系统根据目标数据的属性和数据的映射规则文件中的目标数据的不同属性的映射规则片段以及目标数据的数据的数据模板调用在基于documentum的文档系统中已经定义的数据存储通用方法m1,从第三方系统同步目标数据至基于documentum的文档系统,以及根据目标数据的映射规则文件的整体结构片段,调用在基于documentum的文档系统中已经定义的数据存储通用方法m3,从第三方系统上传文件至基于documentum的文档系统。
132.在本实施例中,基于documentum的文档系统根据工程造价表的属性和数据的映射规则文件中的工程造价表的不同属性的映射规则片段以及工程造价表的数据的数据模板调用在基于documentum的文档系统中已经定义的数据存储通用方法m1,将该工程造价表的数据从dts系统同步至基于documentum的文档系统,根据工程造价表的映射规则文件的整体结构片段,调用在基于documentum的文档系统中已经定义的数据存储通用方法m3,将该工程造价表从dts系统上传至基于documentum的文档系统。
133.实施该实施例的技术方案,获取第三方系统的目标数据;读取第三方系统目标数据的属性和数据;根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。通过配置目标数据的映射规则文件的方式,减少了因接入第三方系统或者第三方系统的数据同步字段变化而产生的代码开发量,以及业务变动产生的代码变更量,稳定高效地实现异构系统之间的数据同步。
134.参见图1所示,为本发明提供的一种数据同步方法第二实施例的流程示意图,该实施例的数据同步方法包括以下步骤:
135.s1、获取第三方系统的目标数据;
136.s2、读取第三方系统目标数据的属性和数据;
137.s3、根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
138.s4、根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
139.本实施例与该数据同步方法第一实施例的区别在于,在步骤s2中,获取第三方系统的目标数据后,该基于documentum的文档系统利用java反射机制,解析之前通过setstring,setbool等方法机制设置好的对应该目标数据的属性,得到第三方系统目标数据的属性,第三方系统目标数据的属性包括字典内容、关联关系、数据类型等,动态读取第三方系统目标数据包含的数据。可以理解地,目标数据的字典内容表示的是第三方系统与基于documentum的文档系统具有映射关系的目标数据,根据目标数据的字典内容配置目标数据的字典内容的映射规则,用于存储具有映射关系的目标数据;目标数据的关联关系表示的是目标数据之间的关联,根据目标数据的关联关系配置目标数据的关联关系的映射规则,用于根据目标数据的关联关系查询与目标数据关联的多种目标数据结果;目标数据的数据类型表示的是第三方系统目标数据的类型,根据目标数据的数据类型配置目标数据的同步范围的映射规则,用于确定目标数据的同步范围以及标记目标数据的传输进行状态。
140.在本实施例中,参见图5所示,在获取dts系统的工程造价表后,基于documentum的文档系统利用java反射机制,解析之前通过setstring,setbool等方法机制设置好的对应该工程造价表的属性,得到dts系统的工程造价表的字典内容、关联关系、数据类型等属性,字典内容例如,材料包含了细沙(单位:m3)、碎石(单位:m3)、水泥(单位:吨)、增强剂(单位:kg)、钢筋(单位:吨)等,价格包含了预报价(单位:元)、报价(单位:元)、最终成交价(单位:元)等;关联关系例如,细沙的预报价是30元/m3,又例如,水泥的最终成交价是115元/吨,又例如,钢筋的报价是520元/吨;数据类型例如,同步的是dts系统的一张工程造价表,在基于documentum的文档系统数据库对应的存储为工程文件,又例如,同步的是dts系统的一张庆祝dts公司成立50周年的邀请函,在基于documentum的文档系统数据库对应的存储为函件;动态获取dts系统的工程造价表包含的数据,例如30、32、28、27、30、25、120、130、115等对应材料的对应预报价、报价以及最终成交价。
141.参见图1所示,为本发明提供的一种数据同步方法第三实施例的流程示意图,该实施例的数据同步方法包括以下步骤:
142.s1、获取第三方系统的目标数据;
143.s2、读取第三方系统目标数据的属性和数据;
144.s3、根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
145.s4、根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
146.本实施例与该数据同步方法第一实施例的区别在于,参见图2所示,在步骤s3中,
基于documentum的文档系统读取到目标数据的属性和数据之后,该目标数据的属性主要包括字典内容、关联关系、数据类型等,为配置对应目标数据的属性和数据的映射规则xml文件,执行如下步骤:
147.s3-1:配置目标数据的映射规则xml文件整体结构片段,用于定义数据传输规则以及文件传输属性;
148.s3-2:根据读取到的目标数据的数据,配置对应目标数据的数据的xml数据模板,用于将目标数据的数据读取到xml数据模板中对应的位置;
149.s3-3:根据读取到的目标数据的字典内容,配置对应目标数据的字典内容的映射规则xml文件片段,用于存储具有映射关系的目标数据;
150.s3-4:根据读取到的目标数据的关联关系,配置对应目标数据的关联关系的映射规则xml文件片段,用于根据目标数据的关联关系查询与目标数据关联的多种目标数据结果;
151.s3-5:根据读取到的目标数据的数据类型,配置对应目标数据的同步范围的映射规则xml文件片段,用于确定目标数据的同步范围以及标记目标数据的传输进行状态,该目标数据的同步范围的映射规则xml文件片段包括:目标数据的第一同步范围片段和目标数据的传递状态值片段;
152.s3-6:联合目标数据的数据的xml数据模板和所有目标数据包含的属性的映射规则xml文件片段,结合目标数据的映射规则xml文件整体结构片段,形成完整的目标数据的属性和数据的映射规则xml文件。
153.在本实施例中,获取到dts系统工程造价表的属性和数据之后,该工程造价表的属性主要包括字典内容、关联关系、数据类型等;基于documentum的文档系统配置该dts系统工程造价表的映射规则xml文件整体结构片段;根据读取到的工程造价表的数据,将工程造价表中的数据按照模板格式填入对应的位置,配置对应工程造价表的数据的xml数据模板;根据读取到的工程造价表的字典内容,配置对应工程造价表的字典内容的映射规则xml文件片段;根据读取到的工程造价表的关联关系,配置对应工程造价表的关联关系的映射规则xml文件片段;根据读取到的工程造价表的数据类型,配置对应工程造价表的同步范围的映射规则xml文件片段;联合工程造价表的数据的xml数据模板和所有工程造价表的属性的映射规则xml文件片段,结合工程造价表的映射规则xml文件整体结构片段,形成完整的工程造价表的属性和数据的映射规则xml文件。
154.进一步地,例如,在第三实施例中,步骤s3-1包括:
155.根据datatype字段定义的第三方系统数据类型,调用resultmap字段配置对应目标数据的同步范围的映射规则xml文件片段;
156.通过datatype字段定义第三方系统数据类型和dctmtype字段定义基于documentum的文档系统数据类型,默认均为string类型;
157.根据fileconfig字段定义的文件传输属性,结合目标数据的属性和数据的映射规则xml文件片段,对目标数据进行对应的操作;
158.fileconfig字段定义了文件传输属性,支持ftp、sftp、http、samba等多种传输协议的文件上传;
159.根据resultmap字段配置目标数据的属性和数据的映射规则xml文件片段;
160.resultmap字段中,id为目标数据的属性和数据的映射规则xml文件的唯一标识,result为目标数据的属性和数据的映射规则xml文件片段;
161.result字段中,column为第三方系统数据类型的属性名称,property为基于documentum的文档系统数据类型的属性名称。
162.该实施例步骤s3-1的具体实施方式为:
[0163][0164]
其中,《?xml version="1.0"encoding="utf-8"standalone="yes"?》表示xml的头文件属性,说明了这个xml文件的格式;其中version代表版本,encoding代表字符编码方式,standalone表示这个xml文件是独立的还是依赖与外部所定义的dtd文件的,值yes表示这个xml文档是自包含的(self-contained);
[0165]
通过datatype字段定义dts系统数据类型和dctmtype字段定义基于documentum的文档系统数据类型,默认均为string类型;根据datatype字段定义的dts系统数据类型,调用resultmap字段配置对应工程造价表的同步范围的映射规则;
[0166]
通过fileconfig字段定义了文件传输属性,支持ftp、sftp、http、samba等多种传输协议的文件上传;根据fileconfig字段定义的文件传输属性,确定工程造价表的传输规则、文件传输属性以及存储方式等;
[0167]
根据resultmap字段配置工程造价表的属性和数据的映射规则xml文件片段;resultmap字段中,id字段为工程造价表的属性和数据的映射规则xml文件的唯一标识,区别于普通result字段,用于设置文件的默认上传路径;
[0168]
result字段为工程造价表的属性和数据的映射规则xml文件片段,工程造价表的属性的映射规则xml文件片段主要包括:工程造价表的字典内容的映射规则、工程造价表的关联关系的映射规则以及工程造价表的数据类型的映射规则,工程造价表的数据的映射规则xml文件片段包括工程造价表的数据的xml数据模板;
[0169]
result字段中,column为dts系统数据类型的属性名称,property为基于documentum的文档系统数据类型的属性名称。
[0170]
进一步地,例如,在第三实施例中,步骤s3-2包括:
[0171]
根据读取的目标数据的数据,将目标数据的数据按照模板格式从第一个数据依顺序填入数据模板对应的位置,直至最后一个数据填入数据模板对应的位置,形成完整的目标数据的数据的xml数据模板。
[0172]
在本实施例中,参见图5所示,读取到的工程造价表的数据有30,32,28,27,30,25,120,130,115,30,35,28,480,520,450等,按照基于documentum的文档系统配置的对应工程造价表的xml数据模板的格式,依顺序填入xml数据模板对应的位置,形成完整的工程造价表的xml数据模板。
[0173]
第三方系统xml数据模板示例如下(以接入一个名为dts的第三方系统的xml数据模板作为示例):
[0174]
[0175]
[0176]
[0177][0178]
当第三方系统使用其他数据传输模板,或者使用其他的文件传输方式时,我们只需要修改目标数据的属性和数据的映射规则文件中的datatype配置(例如com.cnpdc.adds.pojo.syndataletterfromxml)以及fileconfig配置,而无须重复实现数据归档逻辑。
[0179]
进一步地,例如,在第三实施例中,步骤s3-3包括:
[0180]
根据目标数据的字典内容,调用valuemaps字段配置对应目标数据的字典内容的映射规则xml文件片段;
[0181]
valuemaps字段包含若干个valuemap字段,根据valuemap字段配置对应目标数据的字典内容的映射规则;
[0182]
valuemap字段中,key第三方系统目标数据的字典内容,value为基于documentum的文档系统目标数据的字典内容。
[0183]
该实施例步骤s3-3的具体实施方式为:
[0184][0185]
其中,基于documentum的文档系统根据读取到的目标数据的字典内容,在result字段中首先通过column和property分别定义第三方系统目标数据的字典内容的名称和基于documentum的文档系统目标数据的字典内容的名称,然后通过dctmdefaultvalue和datadefaultvalue分别声明第三方系统目标数据的字典内容和基于documentum的文档系统目标数据的字典内容的默认值,定义目标数据的字典内容的传输方式,最后在valuemaps字段包含的若干个valuemap字段中,配置目标数据的字典内容的映射规则,valuemap字段中,key为第三方系统目标数据的字典内容,value为基于documentum的文档系统目标数据的字典内容,key与value一一对应,具有映射关系。
[0186]
在本实施例中,dts系统工程造价表中的key包括了材料内容:细沙(单位:m3)、碎石(单位:m3)、水泥(单位:吨)、增强剂(单位:kg)、钢筋(单位:吨)等,价格内容:预报价(单位:元)、报价(单位:元)、最终成交价(单位:元)等;在基于documentum的文档系统对应工程造价表的value被定义为,材料内容:fine_sand(m3),gravel(m3),cement(ton),enhancer(kg),rebar(ton)等,价格内容:expected_price(cny),price(cny),final_price(cny)等,由此可见,dts系统工程造价表中的key与基于documentum的文档系统对应工程造价表的value一一对应,具有映射关系。
[0187]
进一步地,例如,在第三实施例中,步骤s3-4包括:
[0188]
根据目标数据的关联关系,调用relations字段配置对应目标数据的关联关系的映射规则xml文件片段;
[0189]
relations字段包含若干个relation字段,根据relation字段配置对应目标数据的关联关系的映射规则,每种目标数据的关联关系存放于一个relation字段中。
[0190]
该实施例步骤s3-4的具体实施方式为:
[0191][0192]
relation字段中,name定义了目标数据的关联关系的类型,label定义了目标数据的关联关系的名称,最后identity赋予了目标数据的关联关系的唯一标识。
[0193]
以上具体实施方式仅示出了部分关联关系,其中,name="ecm_attach_rel"表示的是dts系统的工程造价表的数据与基于documentum的文档系统的数据的关联关系的类型为ecm_attach_rel,label="relevant"表示的是关联关系的名称为relevant,《identity》水泥-cement-final_price《/identity》字段中,identity赋予了dts系统的工程造价表的数据与基于documentum的文档系统的数据的关联关系的唯一标识,水泥-cement-final_price为关联关系的标识名称,可以通过唯一标识查询属于此关联关系的数据。
[0194]
进一步地,例如,在第三实施例中,步骤s3-5包括:
[0195]
根据目标数据的数据类型,调用transrules字段配置对应目标数据的同步范围的映射规则xml文件片段;
[0196]
transrules字段中,包含whereclause字段,根据whereclause字段的目标数据的数据类型的查询条件语句,配置对应目标数据的第一同步范围的映射规则,查询条件语句包含于cdata块中,用于确定目标数据的第一同步范围;
[0197]
transrules字段中,包含transflag字段,根据transflag字段设定目标数据的传递状态值,并配置对应目标数据的传递状态值的映射规则,用于标记目标数据的传输进行状态。
[0198]
该实施例步骤s3-5的具体实施方式为:
[0199]
[0200]
[0201][0202]
通过transruleconfig中的transrules字段配置工程造价表的同步范围的映射规则以及反写规则,每个transrules中包含name属性,即工程造价表的同步范围的映射规则的名称,以区别不同的工程造价表的同步范围的映射规则,包含dctmtype字段,以确定传递的工程造价表的数据类型,包含whereclause字段,以确定工程造价表的数据类型的查询条件语句,由于查询语句中经常会有xml字段中的特殊字符,因此该字段内容包含于cdata块中,包含batchsize字段,以限制工程造价表每次传递的最大批次量,避免由于一次性传递数量过大而带来的系统性能问题,包含transflag字段,以设定传递完成后,不同的状态值,用于将同步成功的工程造价表移入历史数据库、重传同步失败的工程造价表以及配合数据同步实时监控系统查看并处理同步失败的工程造价表。
[0203]
进一步地,例如,在第三实施例中,步骤s3-6包括:
[0204]
在配置的目标数据的映射规则xml文件整体结构片段中,填入配置的目标数据的数据的xml数据模板和目标数据包含的每个属性的映射规则xml文件片段,形成完整的目标数据的属性和数据的映射规则xml文件。
[0205]
在本实施例中,在配置的工程造价表的映射规则xml文件整体结构片段中,填入配置的工程造价表的数据的xml数据模板和工程造价表的字典内容、关联关系、数据类型等属性的映射规则xml文件片段,形成完整的工程造价表的属性和数据的映射规则xml文件。
[0206]
参见图1所示,为本发明提供的一种数据同步方法第四实施例的流程示意图,该实施例的数据同步方法包括以下步骤:
[0207]
s1、获取第三方系统的目标数据;
[0208]
s2、读取第三方系统目标数据的属性和数据;
[0209]
s3、根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
[0210]
s4、根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
[0211]
本实施例与该数据同步方法第一实施例的区别在于,在步骤s4中,包括以下步骤:
[0212]
s4-1:根据目标数据的数据的xml数据模板和目标数据的属性的映射规则xml文件片段,调用数据存储通用方法m1,从第三方系统同步目标数据至基于documentum的文档系统,对同步成功的目标数据移入历史数据库,对同步失败的目标数据进行重传;
[0213]
历史数据库为基于documentum的文档系统持久化存储同步成功的目标数据的文档数据库;
[0214]
s4-2:根据目标数据的映射规则xml文件整体结构片段,调用数据存储通用方法m3,从第三方系统上传文件至基于documentum的文档系统。
[0215]
在该实施例中,基于documentum的文档系统解析工程造价表的属性和数据的映射规则xml文件,根据解析得到的工程造价表的映射规则xml文件整体结构片段,确定工程造价表的传输规则、文件传输属性以及存储方式等,调用数据存储通用方法m3,从dts系统上传文件至基于documentum的文档系统;以及根据解析得到的工程造价表的数据的xml数据模板和工程造价表的属性的映射规则xml文件片段,调用数据存储通用方法m1,按照对应的数据模板格式以及对应的映射规则将工程造价表从dts系统同步至基于documentum的文档系统;此外,对同步成功的工程造价表移入历史数据库,对同步失败的工程造价表进行重传,上述的历史数据库为基于documentum的文档系统持久化存储同步成功的目标数据的文档数据库。
[0216]
参见图1所示,为本发明提供的一种数据同步方法第五实施例的流程示意图,该实施例的数据同步方法包括以下步骤:
[0217]
s1、获取第三方系统的目标数据;
[0218]
s2、读取第三方系统目标数据的属性和数据;
[0219]
s3、根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
[0220]
s4、根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
[0221]
本实施例与该数据同步方法第四实施例的区别在于,在步骤s4-1中,包括以下步骤:
[0222]
根据目标数据的传递状态值的映射规则,设定定时时间,同步成功的目标数据根据定时时间移入历史数据库;
[0223]
设定延时时间,对同步失败的目标数据进行重传;
[0224]
设定同步失败的目标数据重传次数的计数;
[0225]
在延时时间内同步失败的目标数据没有进行重传;和/或
[0226]
同步失败的目标数据重传次数的计数达到10次,对同步失败的目标数据进行不覆盖重传;和/或
[0227]
对同步失败的目标数据进行覆盖重传;和/或
[0228]
根据第三方系统目标数据的属性和数据重新配置对应目标数据的属性和数据的映射规则xml文件。
[0229]
在该实施例中,启动配套的数据同步实时监控系统,实时监控系统工作过程中,将进行同步的工程造价表分成历史数据表和运行数据表,运行数据表进行工程造价表同步操作,设定定时时间,将同步成功的工程造价表根据定时时间定期移入历史数据表,对进行同步的工程造价表的传递状态进行监控,对同步失败的工程造价表的重传次数进行计数;
[0230]
根据工程造价表的传递状态,将同步成功的工程造价表定时转移至历史数据库;设定延时时间,在延时时间内,判断同步失败的工程造价表是否有进行重传和/或同步失败的工程造价表重传次数的计数是否达到10次;若否,调用对应的数据存储通用方法,对同步失败的工程造价表每隔半小时重传一次,并统计同步失败的工程造价表的重传次数,当重
传次数达到10次时,则停止重传,文档监控管理人员人工判断传递错误的原因,对同步失败的工程造价表进行覆盖重传或者不覆盖重传;或者根据dts系统工程造价表的属性和数据重新配置对应工程造价表的属性和数据的映射规则xml文件。
[0231]
实时监控系统提供对映射规则xml文件进行修改的功能,帮助文档监控管理人员快速的解决问题,并发起工程造价表的重新传递,修改映射规则xml文件需要权限,一般从源头进行工程造价表的覆盖重传。
[0232]
参见图3所示,为本发明提供的一种数据同步装置的原理图,在本发明提供的一种数据同步装置的一些实施例中,数据通用存储方法包括:
[0233]
m1:从第三方系统同步数据至基于documentum的文档系统的数据存储通用方法;
[0234]
m2:从基于documentum的文档系统同步数据至第三方系统的数据存储通用方法;
[0235]
m3:从第三方系统上传文件至基于documentum的文档系统的数据存储通用方法;
[0236]
m4:从基于documentum的文档系统上传文件至第三方系统的数据存储通用方法。
[0237]
在一些实施例中,根据目标数据的数据的xml数据模板和目标数据的属性的映射规则xml文件片段,调用数据存储通用方法m1,从第三方系统同步目标数据至基于documentum的文档系统,对同步成功的目标数据移入历史数据库,对同步失败的目标数据进行重传;
[0238]
根据目标数据的映射规则xml文件整体结构片段中定义的目标数据的数据类型、数据传输规则、文件传输属性以及存储方式等,调用数据存储通用方法m3,从第三方系统上传文件至基于documentum的文档系统。
[0239]
在本实施例中,基于documentum的文档系统配置工程造价表的属性和数据的映射规则xml文件后,根据工程造价表的映射规则xml文件的整体结构片段,调用在基于documentum的文档系统中已经定义的数据存储通用方法m3,将该工程造价表从dts系统上传至基于documentum的文档系统;根据配置好的工程造价表包含的字典内容、关联关系以及数据类型等属性的映射规则xml文件片段以及工程造价表的数据的xml数据模板调用在基于documentum的文档系统中已经定义的数据存储通用方法m1,将该工程造价表的数据从dts系统同步至基于documentum的文档系统,对同步成功的工程造价表移入历史数据库,对同步失败的工程造价表进行重传。
[0240]
参见图4所示,为本发明提供的一种数据同步装置的一些实施例的逻辑结构图,具体包括:
[0241]
获取单元,用于获取第三方系统的目标数据,并读取目标数据的属性和数据;
[0242]
配置单元,用于根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件;
[0243]
同步单元,用于根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。
[0244]
存储单元,用于存储获取到的第三方系统的目标数据的数据和配置的对应目标数据的属性和数据的映射规则文件。
[0245]
进一步地,在一些实施例中,获取单元还包括:
[0246]
第一获取子单元:用于读取目标数据的数据;
[0247]
第二获取子单元:用于读取目标数据的字典内容;
[0248]
第三获取子单元:用于读取目标数据的关联关系;
[0249]
第四获取子单元:用于读取目标数据的数据类型。
[0250]
进一步地,在一些实施例中,配置单元还包括:
[0251]
第一配置子单元:用于配置目标数据的映射规则xml文件整体结构片段;
[0252]
第二配置子单元:用于根据目标数据的数据,配置对应目标数据的数据的xml数据模板;
[0253]
第三配置子单元:用于根据目标数据的字典内容,配置对应目标数据字典内容的映射规则xml文件片段;
[0254]
第四配置子单元:用于根据目标数据的关联关系,配置对应目标数据关联关系的映射规则xml文件片段;
[0255]
第五配置子单元:用于根据目标数据的数据类型,配置对应目标数据同步范围的映射规则xml文件片段;
[0256]
第六配置子单元:用于联合目标数据的数据的xml数据模板和所有目标数据的属性的映射规则xml文件片段,结合目标数据的映射规则xml文件整体结构片段,形成完整的目标数据的属性和内容的映射规则xml文件。
[0257]
进一步地,在一些实施例中,该数据同步装置还包括:
[0258]
构造单元,用于构造基于documentum文档系统的数据存储通用方法;
[0259]
构造单元包括:
[0260]
第一构造子单元,用于构造一种从第三方系统同步数据至基于documentum文档系统的数据存储通用方法m1;
[0261]
第二构造子单元,用于构造一种从基于documentum文档系统同步数据至第三方系统的数据存储通用方法m2;
[0262]
第三构造子单元,用于构造一种从第三方系统上传文件至基于documentum文档系统的数据存储通用方法m3;
[0263]
第四构造子单元,用于构造一种从基于documentum文档系统上传文件至第三方系统的数据存储通用方法m4。
[0264]
进一步地,在一些实施例中,同步单元还包括:
[0265]
第一同步子单元,用于根据目标数据的数据的xml数据模板和目标数据的属性的映射规则xml文件片段,调用数据存储通用方法m1,从第三方系统同步目标数据至基于documentum的文档系统,对同步成功的目标数据移入历史数据库,对同步失败的目标数据进行重传;
[0266]
第二同步子单元,用于根据目标数据的映射规则xml文件整体结构片段,调用数据存储通用方法m3,从第三方系统上传文件至基于documentum的文档系统。
[0267]
进一步地,在一些实施例中,第一同步子单元还包括:
[0268]
时间单元,用于设定定时时间,将同步成功的目标数据移入历史数据库;
[0269]
用于设定延时时间,对同步失败的目标数据进行重传;
[0270]
计数单元,用于设定同步失败的目标数据重传次数的计数;
[0271]
判断单元,用于判断在延时时间内同步失败的目标数据是否有进行重传和/或同步失败的目标数据重传次数的计数是否达到10次;
[0272]
重传单元,用于在延时时间内同步失败的目标数据没有进行重传和/或同步失败的目标数据重传次数的计数达到10次时,对同步失败的目标数据进行不覆盖重传;和/或
[0273]
对同步失败的目标数据进行覆盖重传;和/或
[0274]
根据第三方系统目标数据的属性和数据重新配置对应目标数据的属性和数据的映射规则xml文件。
[0275]
在本发明提供的一种数据同步装置的一些实施例中,该数据同步装置可以包括:获取单元、配置单元、同步单元、存储单元和构造单元等;该获取单元可以包括:第一获取子单元、第二获取子单元、第三获取子单元、第四获取子单元;该配置单元可以包括:第一配置子单元、第二配置子单元、第三配置子单元、第四配置子单元、第五配置子单元、第六配置子单元;该构造单元可以包括:第一构造子单元、第二构造子单元、第三构造子单元、第四构造子单元;该同步单元可以包括:第一同步子单元、第二同步子单元;该第一同步子单元还可以包括:时间单元、计数单元、判断单元、重传单元。
[0276]
在步骤s1中,获取单元获取第三方系统的目标数据。在一些实施例中,基于documentum的文档系统接收到第三方系统目标数据需要进行数据同步的信号,启动spring boot后端框架进行数据同步初始化配置,调用setstring,setbool等方法机制,利用java反射机制,获取单元获取第三方系统目标数据,创建对应该第三方系统目标数据的数据的存储文件,并设置基于documentum的文档系统对应该目标数据的数据的存储文件的属性,该存储文件用于存储对应该第三方系统目标数据的数据。
[0277]
例如,基于documentum的文档系统接收到dts系统要同步工程造价表的数据的信号,启动spring boot后端框架对基于documentum的文档系统数据同步的配置进行初始化,调用setstring,setbool等方法机制,获取单元获取dts系统的工程造价表,工程造价表在基于documentum的文档系统存储为工程文件,因此在其数据库中新建一个与dts系统的工程造价表对应的工程文件,名为“dts-pj-copy”,并设置基于documentum的文档系统对应该工程造价表的属性,该工程文件存储该dts系统的工程造价表中的数据。
[0278]
在步骤s2中,获取单元读取第三方系统目标数据的属性和数据。在一些实施例中,获取第三方系统的目标数据后,该基于documentum的文档系统利用java反射机制,解析之前通过setstring,setbool等方法机制设置好的对应该目标数据的属性,第一获取子单元读取到第三方系统目标数据的数据,第二获取子单元读取到第三方系统的目标数据的字典内容,第三获取子单元读取到第三方系统目标数据的关联关系,第四获取子单元读取到第三方系统目标数据的数据类型。
[0279]
例如,在获取dts系统的工程造价表后,基于documentum的文档系统利用java反射机制,解析之前通过setstring,setbool等方法机制设置好的对应该工程造价表的属性,第一获取子单元获取到dts系统的工程造价表包含的数据,例如30、32、28、27、30、25等对应材料的对应预报价、报价以及最终成交价;第二获取子单元读取到工程造价表的字典内容,字典内容中的配料包含了细沙(单位:m3)、碎石(单位:m3)、水泥(单位:吨)、增强剂(单位:kg)、钢筋(单位:吨)等,价格包含了预报价(单位:元)、报价(单位:元)、最终成交价(单位:元)等;第三获取子单元读取到工程造价表的关联关系,例如,细沙的预报价是30元/m3,水泥的最终成交价是115元/吨,钢筋的报价是520元/吨等;第四获取子单元读取到工程造价表的数据类型,例如,同步的是dts系统的一张工程造价表,在基于documentum的文档系统数据
库对应的存储为工程文件,又例如,同步的是dts系统的一张庆祝dts公司成立50周年的邀请函,在基于documentum的文档系统数据库对应的存储为函件。
[0280]
在步骤s3中,配置单元根据目标数据的属性和数据,配置对应目标数据的属性和数据的映射规则文件。在一些实施例中,配置单元根据获取到的目标数据,配置目标数据的映射规则文件整体结构片段,根据读取到的目标数据的数据,将目标数据的数据按照模板格式填入对应的位置,配置对应目标数据的数据的数据模板,根据读取到的目标数据的属性,配置对应目标数据的属性的映射规则文件片段,联合目标数据的数据的数据模板和所有目标数据的属性的映射规则文件片段,结合目标数据的映射规则文件整体结构片段,形成完整的目标数据的属性和数据的映射规则文件。
[0281]
例如,配置单元根据获取到的dts系统的工程造价表,该工程造价表的属性主要包括字典内容、关联关系、数据类型等;第一配置子单元配置对应该工程造价表的映射规则xml文件整体结构片段,根据读取到的dts系统工程造价表的数据,第二配置子单元将工程造价表的数据按照模板格式填入对应的位置,以形成对应工程造价表的数据的xml数据模板,根据读取到的dts系统工程造价表的字典内容,第三配置子单元配置对应工程造价表的字典内容的映射规则xml文件片段,根据读取到的dts系统工程造价表的关联关系,第四配置子单元配置对应工程造价表的关联关系的映射规则xml文件片段,根据读取到的dts系统工程造价表的数据类型,第五配置子单元配置对应工程造价表的同步范围的映射规则xml文件片段,第六配置子单元联合工程造价表的数据的xml数据模板和工程造价表包含的属性的映射规则xml文件片段,结合工程造价表的映射规则xml文件整体结构片段,形成完整的工程造价表的属性和数据的映射规则xml文件。
[0282]
在步骤s4中,同步单元根据目标数据的属性和数据的映射规则文件,调用数据存储通用方法,对目标数据进行对应的操作。在一些实施例中,构造单元用于构造基于documentum文档系统的数据存储通用方法;其中,第一构造子单元用于构造一种从第三方系统同步数据至基于documentum文档系统的数据存储通用方法m1,第二构造子单元用于构造一种从基于documentum文档系统同步数据至第三方系统的数据存储通用方法m2,第三构造子单元用于构造一种从第三方系统上传文件至基于documentum文档系统的数据存储通用方法m3,第四构造子单元用于构造一种从基于documentum文档系统上传文件至第三方系统的数据存储通用方法m4。
[0283]
如图3所示,在一些实施例中,第一同步子单元用于根据目标数据的属性和数据的映射规则文件中目标数据的不同属性的映射规则文件片段和目标数据的数据的数据模板,调用数据存储通用方法m1,从第三方系统同步目标数据至基于documentum的文档系统,对同步成功的目标数据移入历史数据库,对同步失败的目标数据进行重传;第二同步子单元用于根据目标数据的映射规则文件的整体结构片段,调用数据存储通用方法m3,从第三方系统上传文件至基于documentum的文档系统。
[0284]
进一步地,在一些实施例中,第一同步子单元还包括:
[0285]
时间单元,用于设定定时时间,将同步成功的目标数据移入历史数据库;
[0286]
用于设定延时时间,对同步失败的目标数据进行重传;
[0287]
计数单元,用于设定同步失败的目标数据重传次数的计数;
[0288]
判断单元,用于判断在延时时间内同步失败的目标数据是否有进行重传和/或同
步失败的目标数据重传次数的计数是否达到10次;
[0289]
重传单元,用于在延时时间内同步失败的目标数据没有进行重传和/或同步失败的目标数据重传次数的计数达到10次时,对同步失败的目标数据进行不覆盖重传;和/或
[0290]
对同步失败的目标数据进行覆盖重传;和/或
[0291]
根据第三方系统目标数据的属性和数据重新配置对应目标数据的属性和数据的映射规则xml文件。
[0292]
例如,在一些实施例中,同步单元解析工程造价表的属性和数据的映射规则xml文件,第一同步子单元根据解析得到的工程造价表的数据的xml数据模板和工程造价表的属性的映射规则xml文件片段,调用数据存储通用方法m1,按照对应的数据模板格式以及对应的映射规则将工程造价表从第三方系统同步至基于documentum的文档系统,对同步成功的工程造价表移入历史数据库,对同步失败的工程造价表进行重传,上述的历史数据库为基于documentum的文档系统持久化存储同步成功的目标数据的文档数据库;第二同步子单元根据解析得到的工程造价表的映射规则xml文件整体结构片段,确定工程造价表的传输规则、文件传输属性以及存储方式等,调用数据存储通用方法m3,从dts系统上传文件至基于documentum的文档系统。
[0293]
又例如,在一些实施例中,第一同步子单元启动配套的数据同步实时监控系统,实时监控系统工作过程中,将进行同步的工程造价表分成历史数据表和运行数据表,运行数据表进行工程造价表同步操作,时间单元用于设定定时时间,将同步成功的工程造价表根据定时时间定期移入历史数据表,对进行同步的工程造价表的传递状态进行监控,启动计数单元对同步失败的工程造价表的重传次数进行计数;
[0294]
根据工程造价表的传递状态,将同步成功的工程造价表定时转移至历史数据库;时间单元用于设定延时时间,在延时时间内,判断单元判断同步失败的工程造价表是否有进行重传和/或同步失败的工程造价表重传次数的计数是否达到10次;若否,调用对应的数据存储通用方法,对同步失败的工程造价表每隔半小时重传一次,当重传次数达到10次时,则停止重传,文档监控管理人员人工判断传递错误的原因,启动重传单元对同步失败的工程造价表进行覆盖重传或者不覆盖重传;或者根据dts系统工程造价表的属性和数据重新配置对应工程造价表的属性和数据的映射规则xml文件。
[0295]
实时监控系统提供对映射规则xml文件进行修改的功能,帮助文档监控管理人员快速的解决问题,并发起工程造价表的重新传递,修改映射规则xml文件需要权限,一般从源头进行工程造价表的覆盖重传。
[0296]
参见图3所示,为本发明提供的一种数据同步装置的原理图,具体包括:
[0297]
a系统、b系统、c系统、d系统为第三方系统,a1数据类型映射文件、b1数据类型映射文件、c1数据类型映射文件、d1数据类型映射文件为根据不同的第三方系统目标数据的属性和数据配置的对应目标数据的属性和数据的映射规则xml文件,basedao为基于documentum的文档系统的运行数据表,documentum content server为基于documentum的文档系统的历史数据库,属于工程设计领域,根据业务定义不同的数据类型,定义了工程文件、信函、函件、档案、合同、发票等不同的数据类型,copyfromsourcetodctm为定义的数据存储通用方法m1,copyfromdctmtotarget为定义的数据存储通用方法m2,uploadfile为定义的数据存储通用方法m3,setfile为定义的数据存储通用方法m4。
[0298]
下面将以a1系统为第三方系统,简要讲述本发明提供的一种数据同步装置同步a1系统的目标数据至基于documentum的文档系统的工作原理。
[0299]
本实施例的基于documentum的文档系统首先接收到a1系统目标数据需要进行数据同步的信号,启动spring boot后端框架进行数据同步初始化配置,调用setstring,setbool等方法机制,利用java反射机制,获取第三方系统的目标数据,在basedao中创建对应该第三方系统目标数据的数据的存储文件,并设置基于documentum的文档系统对应该目标数据的数据的存储文件的属性,该存储文件用于存储对应该第三方系统目标数据的数据。
[0300]
在获取第三方系统的目标数据后,然后利用java反射机制,基于documentum的文档系统解析之前通过setstring,setbool等方法机制设置好的对应目标数据的属性,得到basedao中的a1系统目标数据的属性,主要包含了字典内容、关联关系和数据类型等属性,可以理解地,目标数据的字典内容用于存储具有映射关系的目标数据,目标数据的关联关系用于根据目标数据的关联关系查询与目标数据关联的多种目标数据结果,目标数据的数据类型用于配置同步范围的映射规则,并根据该映射规则确定目标数据的同步范围以及标记目标数据的传输进行状态,动态读取basedao中的目标数据包含的数据。
[0301]
再接着根据获取到的目标数据,配置映射规则xml文件的整体结构片段,确定整个xml文件的基础配置框架、数据的传输规则以及文件传输属性和存储方式;将读取到的basedao中的a1系统的目标数据的数据依顺序按照模板格式填入xml数据模板中对应的位置,形成对应目标数据的xml数据模板;根据读取到的basedao中的a1系统的目标数据的属性,主要包含了字典内容、关联关系和数据类型等属性,根据目标数据的字典内容、关联关系和数据类型属性依顺序配置对应目标数据的字典内容、关联关系和数据类型的映射规则xml文件片段;联合目标数据的数据的xml数据模板和目标数据包含的属性的映射规则xml文件片段,结合目标数据的映射规则xml文件整体结构片段,形成完整的a1系统的目标数据的属性和数据的映射规则xml文件;
[0302]
最后基于documentum的文档系统根据a1系统的目标数据的属性和数据的映射规则xml文件中的目标数据的不同属性的映射规则片段以及目标数据的数据的数据模板,调用在基于documentum的文档系统中已经定义的数据存储通用方法m1,从a1系统同步目标数据至基于documentum的文档系统,对同步成功的目标数据移入documentum content server,对同步失败的目标数据进行重传;以及根据目标数据的映射规则文件的整体结构片段,调用在基于documentum的文档系统中已经定义的数据存储通用方法m3,从a1系统上传文件至基于documentum的文档系统。
[0303]
本发明还提供一种计算机设备,包括存储器、处理器和总线,存储器存储有处理器可执行的计算机程序,当计算机设备运行时,处理器与存储器之间通过总线通信,处理器执行计算机程序,以执行上述任一项方法,或任一项方法中任一种可能的实施方式中的步骤。
[0304]
本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,处理器运行该计算机程序,以执行上述任一项方法,或任一项方法中任一种可能的实施方式中的步骤。
[0305]
技术人员可以理解地,本发明所提供的实施例仅是示意性的,实施例的方法中的各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,可以根据实际
需要进行顺序调整、合并和删减,实施例的装置中的模块或子模块、单元或子单元可以根据实际需要进行合并、划分和删减。例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者集成到另一个装置,或一些特征可以忽略,或不执行。
[0306]
技术人员可以意识到,本发明所提供的实施例描述的方法的全部或部分步骤,可以直接使用电子硬件或处理器可执行的计算机程序,或者二者的结合来实施。该计算机程序可以存储于随机存储器(ram)、只读存储器(rom)、内存、电可编程rom、电可擦除可编程rom、cd-rom、寄存器、硬盘、可移动磁盘、或技术领域内所公知的任意其他形式的存储介质中。
[0307]
需要说明的是,以上实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据此实施,并不能以此来限定本发明的权利保护范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,依据本发明权利要求所做的均等变化与修饰,均应属于本发明权利要求的涵盖范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献