CN107704440A - 一种抽取数据库数据自动批量生成所需xml文件的方法 - Google Patents

一种抽取数据库数据自动批量生成所需xml文件的方法 Download PDF

Info

Publication number
CN107704440A
CN107704440A CN201711019103.2A CN201711019103A CN107704440A CN 107704440 A CN107704440 A CN 107704440A CN 201711019103 A CN201711019103 A CN 201711019103A CN 107704440 A CN107704440 A CN 107704440A
Authority
CN
China
Prior art keywords
xml
generation
data
file
xml file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711019103.2A
Other languages
English (en)
Inventor
冯钧
徐维纲
郭涛
陆佳民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hohai University HHU
Original Assignee
Hohai University HHU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hohai University HHU filed Critical Hohai University HHU
Priority to CN201711019103.2A priority Critical patent/CN107704440A/zh
Publication of CN107704440A publication Critical patent/CN107704440A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明涉及一种抽取数据库数据自动批量生成XML文件的方法,包括:提供对所需特定数据结构生成的XML文档的定义;根据提供的XMLSchema文件完成完整的空白XML模版生成;在空白XML模版基础上建立目标生成的XML文件的各节点属性与对应数据库库表字段信息的一一映射,并将映射信息写入XML空白模版中的对应的属性值中;对数据库数据的抽取;将抽取的数据批量自动填入XML空白模版中生成所需特定数据结构的XML文件。本发明自动生成所需特定数据结构的XML文件,解决了随着数据库数据量的不断增长,单一数据表可能会有十几万乃至几百万条记录,需要生成大量的XML文件的复杂问题。

Description

一种抽取数据库数据自动批量生成所需XML文件的方法
技术领域
本发明涉及一种抽取数据库数据自动批量生成所需XML文件的方法,属于计算机信息技术处理技术领域。
背景技术
XML又称为可扩展标记语言(eXtensible Markup Language),是由W3C组织于1998年2月发布的一种标准。作为SGML的一个简化子集,它集成了SGML丰富功能及HTML易用性的特点,以一种开放、自描述的方式定义数据结构。XML可以同时描述数据内容和结构特性,通过这些结构特性,可以了解数据之间的语义关系。HTML文件中的标识符仅用于控制如何显示内容(如字体的大小等等),文件内容所表达的意义完全需要人通过对文字的阅读才能理解。而XML则不同,它所用的标识符本身就蕴含相应的语义信息,文件内容所表达的具体含义完全可通过对语义的分析由机器来解释。因此,HTML与XML之间的差别可以通俗的概括为:“HTML是写给人看的;而XML则是写给机器看的,与SGML相比,XML更简单,同时也可用于设计文档描述语言。
XML自描述的特点使其自诞生之日起就引起了学术界和工业界的广泛关注并随着网络应用的爆炸式增长而得到了广泛应用。具体来说,XML的应用主要体现在以下几个方面:
数据交换:XML之所以能够应用于各种领域的原因,就是因为XML具有其它方法所不具备的数据描述特性,控制信息不依赖于应用软件,而是采用人和机器都可理解的标记形式来表现,XML使用标记(Tag)来描述元素,而XML文件是由一个个称之为元素(Element)的部件构成。使用标记的描述方法可以保留原数据的意义和关系,进而可在不同系统之间进行灵活的数据交换。所以适合于各种平台环境的数据交换。
数据定义:XML的标记名和元素之间的关系可以由使用者自定义,也就是说,根据特定的标记集合和XML语法可以定义一个全新的符号化语言。这就是XML“可扩充(Extensible)”名字的来源。因此,XML也被称为“定义语言的语言”,即XML是一种元语言。基于该特点,XML可以用于定义电子商务数据、多媒体演示数据、数学公式等各种各样数据应用语言的基础语言。
存储数据:一个XML文档就是一个数据库,通过定义数据模式信息形成各种关系,实现数据交换、上下文检索、多媒体传输等。
XML的广泛应用使得以XML格式存储的数据越来越多,如今,XML已经成互联网上信息表示和交换的事实上的标准。
DTD和Schema是建立XML文件数据模型的两种方法。其中DTD依靠特定的语法来描述XML的文件结构,但它具有支持的数据类型较少、对数据类型缺乏约束力、不支持名字空间等方面的缺点。XMLSchema则更为强大,其优势包括以下几点:
1.支持大部分数据类型
XML Schema最重要的能力之一就是对数据类型的支持。通过对数据类型的支持:
1)可更容易地描述允许的文档内容;
2)可更容易地验证数据的正确性;
3)可更容易地与来自数据库的数据一并工作;
4)可更容易地定义数据约束(data facets);
5)可更容易地定义数据模型(或称数据格式);
6)可更容易地在不同的数据类型间转换数据。
2.使用XML语法
另一个关于XML Schema的重要特性是,它们由XML编写。由XML编写XML Schema有很多好处:
1)不必学习新的语言;
2)可使用XML编辑器来编辑Schema文件;
3)可使用XML解析器来解析Schema文件;
4)可通过XML DOM来处理Schema;
5)可通过XSLT来转换Schema。
3.可保护数据通信
当数据从发送方被发送到接受方时,其要点是双方应有关于内容的相同的"期望值"。通过XML Schema,发送方可以用一种接受方能够明白的方式来描述数据。
4、可扩展性
XML Schema是可扩展的,因为它们由XML编写。
通过可扩展的Schema定义,可以:
1)在其他Schema中重复使用您的Schema;
2)创建由标准类型衍生而来的您自己的数据类型;
3)在相同的文档中引用多重的Schema。
XML的广泛应用使得以XML格式存储的数据越来越多,如今,XML已经成互联网上信息表示和交换的事实上的标准。生成XML文件首先需要XSD去定义XML文件结构,XML格式数据来源于数据库,其次需要根据XSD对元素的定义将数据库中对应的数据信息填入XML文件的各个节点中完成对XML文件的生成,对于生成的目标XML文件较少(百为单位),可以使用人工填入的方式进行XML文件的生成,随着数据库数据量的不断增长,单一数据表可能会有十几万乃至几百万条记录,需要生成大量的XML文件,这就给生成XML文件带来了很大困难,我们必须要有一种抽取数据库大量数据并高效实现自动化填入XML对应节点形成XML文件的方法,本发明所要解决的就是针对以上的问题,提供一种抽取数据库数据自动生成所需特定数据结构的XML文件的方法。
发明内容
目的:为了克服现有技术中存在的不足,本发明提供一种抽取数据库数据自动批量生成所需XML文件的方法。
技术方案:为解决上述技术问题,本发明采用的技术方案为:
一种抽取数据库数据自动批量生成所需XML文件的方法,包括如下步骤:
步骤1、通过XMLSchema文件定义模块对所需要生成的XML文档进行定义,生成对应的XSD文件;
步骤2、通过步骤1生成的XSD文件通过XML空白模版生成模块进行XML空白模版的生成;
步骤3、通过包含数据配置信息的XML文件生成模块编写XML文件数据节点与数据库库表映射信息的配置文件;
步骤4、通过步骤3的配置文件生成包含数据配置信息的XML模版;
步骤5、通过数据库数据抽取模块读取步骤4的配置文件数据配置信息并利用多线程及线程池技术进行对应数据库数据信息的抽取工作,这里进行批量的抽取数据,并将这些抽取的数据放入服务器缓存当中;
步骤6、通过填充生成目标XML模块将步骤5抽取的批量数据信息进行加工,读取包含数据配置信息的XML文件,按照配置信息批量完成所需特定数据结构的XML文件的生成。
作为优选方案,所述XMLSchema文件定义模块对XSD文件定义了一个元数据初始节点元素Metadata,type类型为复合元素,指向复合元素Metadata;复合元素Metadata有两个元素,一个元素为一般元素mdFileID,代表元数据的唯一标识ID,type为String类型,最大出现次数maxOccurs为一次;另一个元素mdExtInfo,type类型为复合类型MdExtInfo,指向复合元素MdExtInfo,最大出现次数maxOccurs为一次;复合元素MdExtInfo只有一个对象属性信息元素obj_att,type为String类型,不限制该元素最大出现次数,即该元素可以不出现也可以出现多次。
作为优选方案,所述XML空白模版生成模块用于根据提供的XMLSchema文件完成完整的空白XML模版生成,空白XML模版内容依赖于XMLSchema文件定义模块,通过解析XSD文件工具自动生成所需的空白XML文件模板;依据XSD文件生成了四个主要节点:Metadata节点、mdFileID节点、mdExtInfo节点、obj_att节点,节点mdFileID是用来存储抽取好的元数据唯一标识ID,对象属性节点obj_att用来存储对象属性信息。
作为优选方案,所述空白模版指的是:XML中每个节点都强制出现:必选项和可选项;每个属性节点没有填入任何数据信息;XML文件中每个节点有且仅出现一次。
作为优选方案,所述包含数据配置信息的XML文件生成模块用于建立目标生成的XML文件中的各节点属性与对应数据库库表字段信息的一一映射以及对应空白XML文件模板节点一一映射,是将数据库字段和空白XML模板文档结合在一起的中间配置文件;原生配置文件及包含配置信息的XML文档中,有两张表OOM_OBJMETA对象元数据表及OOM_OBJATT对象信息表;OOM_OBJMETA=main即为OOM_OBJMETA为主表,F_KEY=OBJ_ID即为OOM_OBJMETA外键为OBJ_ID,type=String即为外键类型为String类型,MD_FILE_ID=Metadata/mdFileID即为OOM_OBJMETA中字段MD_FILE_ID对应空白XML模板中节点的具体位置;OOM_OBJATT=common即为OOM_OBJATT为关联普通表,P_KEY=OBJ_ID即为OOM_OBJATT主键为OBJ_ID,ATT_NAME=Metadata/mdExtInfo/obj_att即为表OOM_OBJATT中属性名称字段ATT_NAME生成在对应空白XML模板中节点的具体位置;原生配置文件由用户手动编写,取得原生的配置文件之后,需要生成包含数据配置信息的XML文件,生成模块自动依据原生的配置文件自动生成具有配置信息的XML文档,生成模块具有两步操作,第一步先读取原生配置文件信息,第二步通过配置信息来生成带有配置信息的XML文档,在第二步中自定义<item>、<join>、<joinField>、<table>、<field>元素,<item>元素用来列举元数据属性个数,<join>元素通过外键关系添加两个表之间的关联关系,<joinField>为主表中主键字段添加关联关系,<table>表示关联表,<field>表示关联普通表中关联的对应字段,也即普通表的一个主键;以上步骤后包含配置信息的XML文件生成完毕。
作为优选方案,所述包含数据配置信息的XML文件生成模块中XML格式的配置文件:每张表格的主键必须出现;主表必须出现在关联表之前;关联字段必须同时出现在配置文件中,配置文件中子元素<path>不需要填写。
作为优选方案,所述数据库数据抽取模块用于对数据库数据的抽取,首先从包含数据配置信息的XML文件中读取配置信息,其次按照配置信息读取对应数据库库表对应信息;考虑到数据量为百万级别,抽取模块采用了多线程的线程池技术,用并发来解决大数据容量的处理工作,通过多线程技术为每个线程分配一定资源进行同步抽取数据工作,通过线程池技术来协调线程之间的工作;抽取的数据缓存于内存当中,为填充生成目标XML模块提供所需数据信息。
作为优选方案,所述填充生成目标XML模块将线程抽取好的数据通过读取有映射关系的XML配置文件,线程按照配置对数据进行加工生成成品XML文件,加工完毕回收线程。
有益效果:本发明提供的一种抽取数据库数据自动批量生成所需XML文件的方法,由于本发明采用了配置文件,可以对所需生成XML文件进行灵活的数据库数据配置;由于生成了具有数据配置信息的XML模版并且根据配置信息批量抽取数据库数据信息,抽取大批量数据采用了多线及线程池技术,可以在XML模板的基础上批量高效的将数据库信息填充进XML模版批量生成目标XML文档。
附图说明
图1为本发明方法的基本框架;
图2为本发明方法的数据流图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
如图1、2所示,一种抽取数据库数据自动批量生成所需XML文件的系统,包括:XMLSchema文件定义模块,XML空白模版生成模块、包含数据配置信息的XML文件生成模块、数据库数据抽取模块、填充生成目标XML模块。
所述XMLSchema文件定义模块用于提供对所需特定数据结构生成的XML文档的定义,也即XML定义文件(XSD)的生成;XSD文件的定义需要满足用户对数据展示及检索的需求,如果是行业数据则需要根据行业元数据标准来完成XSD文件的定义;元数据确定好之后,根据W3C标准进行XMLSchema文件的撰写。这里我们使用本专利涉及到的XSD文件作详细说明,XSD定义文件部分如下所示:
上述XSD定义文件中定义了一个元数据初始节点元素Metadata,type类型为复合元素,指向复合元素Metadata,复合元素Metadata有两个元素,一个为一般元素mdFileID,代表元数据的唯一标识ID,type为String类型,并且最大出现次数maxOccurs为一次。第二个元素mdExtInfo的type类型为复合类型MdExtInfo,指向复合元素MdExtInfo,最大出现次数也定义为一次;复合元素MdExtInfo只有一个对象属性信息元素obj_att,type为String类型,不限制该元素最大出现次数,即该元素可以不出现也可以出现多次。上述的XSD定义文件只是一个简单的示例说明,当然在实际情境况下可以按照具体需求配置多个属性元素。
所述XML空白模版生成模块用于根据提供的XMLSchema文件完成完整的空白XML模版生成,本模块内容依赖于XMLSchema文件定义模块,这里以上一模块准备好的XMLSchema文件为原型,通过解析XSD文件工具自动生成所需的空白XML文件模板;这里空白模版指的是:
1.XML中每个节点都强制出现(包括必选项和可选项)
2.每个属性节点没有填入任何数据信息
3.XML文件中每个节点有且仅出现一次;
这里我们使用本专利涉及到的空白模板XML文件作详细说明,根据上一模块的XSD文件我们生成的空白模板XML文件如下所示:
上述生成的XML空白模板是为了成品XML文档提供模板的作用,依据上一模块的XSD文件生成了4个主要节点:Metadata节点、mdFileID节点、mdExtInfo节点、obj_att节点,节点mdFileID用来之后填入元数据文件唯一标识ID,对象属性节点obj_att用来存储对象属性信息。
所述包含数据配置信息的XML文件生成模块,这个模块用于建立目标生成的XML文件中的各节点属性与对应数据库库表字段信息的一一映射以及对应空白XML文件模板节点一一映射,是将数据库字段和空白XML模板文档结合在一起的中间配置文件,起到桥梁作用;这里的库表字段与XML空白模板中节点的映射关系,通过建立模型来形成映射关系,模型中用户可以根据XML空白模板文件元素信息手动配置数据库表对应字段,做到良好适应于多源异构的数据结构。
这里我们使用本专利涉及到的配置文件及包含配置信息的XML中间文件作详细说明,原生配置文件及包含配置信息的XML文档如下所示:
<!--主表-->
OOM_OBJMETA=main
F_KEY=OBJ_ID
type=String
MD_FILE_ID=Metadata/mdFileID
<!--关联普通表-->
OOM_OBJATT=common
P_KEY=OBJ_ID
multi=true
ATT_NAME=Metadata/mdExtInfo/obj_att
上述的原生配置文件中,有两张表OOM_OBJMETA对象元数据表及OOM_OBJATT对象信息表。OOM_OBJMETA=main即为OOM_OBJMETA为主表,F_KEY=OBJ_ID即为OOM_OBJMETA外键为OBJ_ID,type=String即为外键类型为String类型,MD_FILE_ID=Metadata/mdFileID即为OOM_OBJMETA中字段MD_FILE_ID对应空白XML模板中节点的具体位置;OOM_OBJATT=common即为OOM_OBJATT为关联普通表,P_KEY=OBJ_ID即为OOM_OBJATT主键为OBJ_ID,ATT_NAME=Metadata/mdExtInfo/obj_att
即为表OOM_OBJATT中属性名称字段ATT_NAME生成在对应空白XML模板中节点的具体位置。
原生配置文件由用户手动编写,取得原生的配置文件之后,本模块自动依据配置文件自动生成具有配置信息的XML文档,依据上述配置文件生成的XML文档如下所示:
<?xml version="1.0"encoding="UTF-8"?>
<config>
<table name="OOM_OBJMETA"type="main">
<item>
<name></name>
<path></path>
<field>OBJ_ID</field>
</item>
<item>
<name>mdFileID</name>
<path>Metadata/mdFileID</path>
<field>MD_FILE_ID</field>
</item>
</table>
<table name="OOM_OBJATT"type="multi">
<item>
<name></name>
<path></path>
<field>OBJ_ID</field>
</item>
<item>
<name>obj_att</name>
<path>Metadata/mdExtInfo/obj_att</path>
<field>ATT_NAME</field>
</item>
<join>
<joinField>OBJ_ID</joinField>
<table>OOM_OBJMETA</table>
<field>OBJ_ID</field>
<type>String</type>
</join>
</table>
</config>
生成的文件如上述XML文件所示,主要说明一下join元素,join元素的作用主要是通过外键关系添加两个表之间的关联关系,<joinField>表示关联的字段是主表中哪个字段<table>表示关联表,<field>表示关联普通表中关联的对应字段,也即普通表的一个主键,本模块中XML格式的配置文件有着以下三点要求:
1.每张表格的主键必须出现。
2.关联表格主表必须出现在前面。
3.关联字段必须同时出现在配置文件中的两个表内path不填。
至此本模块包含配置信息的XML文件生成完毕。
所述数据库数据抽取模块主要用于对数据库数据的抽取,首先从包含数据配置信息的XML文件中读取配置信息,其次按照配置信息读取对应数据库库表对应信息;考虑到数据量为百万级别,抽取模块主要采用了多线程的线程池技术,用并发来解决大数据容量的处理工作,通过多线程技术为每个线程分配一定资源进行同步抽取数据工作(这里的线程个数视服务器性能高低进行增加和削减),通过线程池技术来协调线程之间的工作;抽取的数据缓存于内存当中,为填充生成目标XML模块提供所需数据信息。
所述填充生成目标XML模块,该模块与上一模块紧密相连,也是上一模块得延续,上一模块线程抽取好的数据通过读取有映射关系的XML配置文件,线程按照配置对数据进行加工生成成品XML文件,这里实际加工中我们考虑到服务器的稳定性及数据的完整性,每个线程每次获取10000的数据量进行加工,加工完毕回收线程。通过多线程高效完成将抽取的数据批量自动填入XML空白模版中生成所需特定数据结构的XML文件的任务。
根据上述几个模块的叙述,最终生成的成品XML文件如下所示:
上述XML包含两个我们XSD文件定义的元素信息,元数据文件ID和单一对象属性名称和属性值。
一种抽取数据库数据自动生成XML文件的方法包括如下步骤:
步骤1、采用XMLSchema文件定义模块对所需要生成的XML文档进行定义,生成对应的XSD文件;
步骤2、通过步骤1生成的XSD文件进行XML空白模版的生成;
步骤3、编写XML文件数据节点与数据库库表映射信息的配置文件;
步骤4、通过步骤3的配置文件生成包含数据配置信息的XML模版;
步骤5、读取步骤4的配置文件数据配置信息并利用多线程及线程池技术进行对应数据库数据信息的抽取工作,这里进行批量的抽取数据,并将这些抽取的数据放入服务器缓存当中;
步骤6、将步骤5抽取的批量数据信息进行加工,读取包含数据配置信息的XML文件,按照配置信息批量完成所需特定数据结构的XML文件的生成。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:包括如下步骤:
步骤1、通过XMLSchema文件定义模块对所需要生成的XML文档进行定义,生成对应的XSD文件;
步骤2、通过步骤1生成的XSD文件通过XML空白模版生成模块进行XML空白模版的生成;
步骤3、通过包含数据配置信息的XML文件生成模块编写XML文件数据节点与数据库库表映射信息的配置文件;
步骤4、通过步骤3的配置文件生成包含数据配置信息的XML模版;
步骤5、通过数据库数据抽取模块读取步骤4的配置文件数据配置信息并利用多线程及线程池技术进行对应数据库数据信息的抽取工作,这里进行批量的抽取数据,并将这些抽取的数据放入服务器缓存当中;
步骤6、通过填充生成目标XML模块将步骤5抽取的批量数据信息进行加工,读取包含数据配置信息的XML文件,按照配置信息批量完成所需特定数据结构的XML文件的生成。
2.根据权利要求1所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述XMLSchema文件定义模块对XSD文件定义了一个元数据初始节点元素Metadata,type类型为复合元素,指向复合元素Metadata;复合元素Metadata有两个元素,一个元素为一般元素mdFileID,代表元数据的唯一标识ID,type为String类型,最大出现次数maxOccurs为一次;另一个元素mdExtInfo,type类型为复合类型MdExtInfo,指向复合元素MdExtInfo,最大出现次数maxOccurs为一次;复合元素MdExtInfo只有一个对象属性信息元素obj_att,type为String类型,不限制该元素最大出现次数,即该元素可以不出现也可以出现多次。
3.根据权利要求1所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述XML空白模版生成模块用于根据提供的XMLSchema文件完成完整的空白XML模版生成,空白XML模版内容依赖于XMLSchema文件定义模块,通过解析XSD文件工具自动生成所需的空白XML文件模板;依据XSD文件生成了四个主要节点:Metadata节点、mdFileID节点、mdExtInfo节点、obj_att节点,节点mdFileID是用来存储抽取好的元数据唯一标识ID,对象属性节点obj_att用来存储对象属性信息。
4.根据权利要求3所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述空白模版指的是:XML中每个节点都强制出现:必选项和可选项;每个属性节点没有填入任何数据信息;XML文件中每个节点有且仅出现一次。
5.根据权利要求1所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述包含数据配置信息的XML文件生成模块用于建立目标生成的XML文件中的各节点属性与对应数据库库表字段信息的一一映射以及对应空白XML文件模板节点一一映射,是将数据库字段和空白XML模板文档结合在一起的中间配置文件;原生配置文件及包含配置信息的XML文档中,有两张表OOM_OBJMETA对象元数据表及OOM_OBJATT对象信息表;OOM_OBJMETA=main即为OOM_OBJMETA为主表,F_KEY=OBJ_ID即为OOM_OBJMETA外键为OBJ_ID,type=String即为外键类型为String类型,MD_FILE_ID=Metadata/mdFileID即为OOM_OBJMETA中字段MD_FILE_ID对应空白XML模板中节点的具体位置;OOM_OBJATT=common即为OOM_OBJATT为关联普通表,P_KEY=OBJ_ID即为OOM_OBJATT主键为OBJ_ID,ATT_NAME=Metadata/mdExtInfo/obj_att即为表OOM_OBJATT中属性名称字段ATT_NAME生成在对应空白XML模板中节点的具体位置;原生配置文件由用户手动编写,取得原生的配置文件之后,需要生成包含数据配置信息的XML文件,生成模块自动依据原生的配置文件自动生成具有配置信息的XML文档,生成模块具有两步操作,第一步先读取原生配置文件信息,第二步通过配置信息来生成带有配置信息的XML文档,在第二步中自定义<item>、<join>、<joinField>、<table>、<field>元素,<item>元素用来列举元数据属性个数,<join>元素通过外键关系添加两个表之间的关联关系,<joinField>为主表中主键字段添加关联关系,<table>表示关联表,<field>表示关联普通表中关联的对应字段,也即普通表的一个主键;以上步骤后包含配置信息的XML文件生成完毕。
6.根据权利要求5所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述包含数据配置信息的XML文件生成模块中XML格式的配置文件:每张表格的主键必须出现;主表必须出现在关联表之前;关联字段必须同时出现在配置文件中,配置文件中子元素<path>不需要填写。
7.根据权利要求1所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述数据库数据抽取模块用于对数据库数据的抽取,首先从包含数据配置信息的XML文件中读取配置信息,其次按照配置信息读取对应数据库库表对应信息;考虑到数据量为百万级别,抽取模块采用了多线程的线程池技术,用并发来解决大数据容量的处理工作,通过多线程技术为每个线程分配一定资源进行同步抽取数据工作,通过线程池技术来协调线程之间的工作;抽取的数据缓存于内存当中,为填充生成目标XML模块提供所需数据信息。
8.根据权利要求1所述的一种抽取数据库数据自动批量生成所需XML文件的方法,其特征在于:所述填充生成目标XML模块将线程抽取好的数据通过读取有映射关系的XML配置文件,线程按照配置对数据进行加工生成成品XML文件,加工完毕回收线程。
CN201711019103.2A 2017-10-26 2017-10-26 一种抽取数据库数据自动批量生成所需xml文件的方法 Pending CN107704440A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711019103.2A CN107704440A (zh) 2017-10-26 2017-10-26 一种抽取数据库数据自动批量生成所需xml文件的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711019103.2A CN107704440A (zh) 2017-10-26 2017-10-26 一种抽取数据库数据自动批量生成所需xml文件的方法

Publications (1)

Publication Number Publication Date
CN107704440A true CN107704440A (zh) 2018-02-16

Family

ID=61182726

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711019103.2A Pending CN107704440A (zh) 2017-10-26 2017-10-26 一种抽取数据库数据自动批量生成所需xml文件的方法

Country Status (1)

Country Link
CN (1) CN107704440A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108920134A (zh) * 2018-06-27 2018-11-30 中国建设银行股份有限公司 自动生成设计文档的方法及装置
CN109474686A (zh) * 2018-11-16 2019-03-15 中国银行股份有限公司 一种xml报文处理方法及装置
CN109725933A (zh) * 2018-05-24 2019-05-07 中国平安人寿保险股份有限公司 大数据文档生成方法、装置、设备及计算机可读存储介质
CN109885569A (zh) * 2018-12-29 2019-06-14 天津南大通用数据技术股份有限公司 基于配置文件对xml数据进行字段提取及结构化方法
US20210225468A1 (en) * 2020-01-21 2021-07-22 OutcomeMD, Inc. Systems, devices, and methods for standardizing a format for medical information received from a plurality of sources, associating the standardized medical information with patient accounts stored in a patient account database, and providing access to the patient account database via medical portal interfaces
CN114509986A (zh) * 2022-01-20 2022-05-17 武汉朗宇智能科技有限公司 一种基于xml文件的跨平台HMI组态配置系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张弛: "基于XML的异构数据库数据交换技术研究", 《电脑知识与技术》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109725933A (zh) * 2018-05-24 2019-05-07 中国平安人寿保险股份有限公司 大数据文档生成方法、装置、设备及计算机可读存储介质
CN108920134A (zh) * 2018-06-27 2018-11-30 中国建设银行股份有限公司 自动生成设计文档的方法及装置
CN108920134B (zh) * 2018-06-27 2022-05-20 中国建设银行股份有限公司 自动生成设计文档的方法及装置
CN109474686A (zh) * 2018-11-16 2019-03-15 中国银行股份有限公司 一种xml报文处理方法及装置
CN109885569A (zh) * 2018-12-29 2019-06-14 天津南大通用数据技术股份有限公司 基于配置文件对xml数据进行字段提取及结构化方法
US20210225468A1 (en) * 2020-01-21 2021-07-22 OutcomeMD, Inc. Systems, devices, and methods for standardizing a format for medical information received from a plurality of sources, associating the standardized medical information with patient accounts stored in a patient account database, and providing access to the patient account database via medical portal interfaces
CN114509986A (zh) * 2022-01-20 2022-05-17 武汉朗宇智能科技有限公司 一种基于xml文件的跨平台HMI组态配置系统和方法
CN114509986B (zh) * 2022-01-20 2024-04-05 武汉朗宇智能科技有限公司 一种基于xml文件的跨平台HMI组态配置系统和方法

Similar Documents

Publication Publication Date Title
CN107704440A (zh) 一种抽取数据库数据自动批量生成所需xml文件的方法
US6950984B2 (en) Method, system for, and program product for generating a display rule for a structured document, and for changing a structured document and its document type definition
US8515939B2 (en) Method and system for facilitating rule-based document content mining
US7143026B2 (en) Generating rules to convert HTML tables to prose
CN102955848B (zh) 一种基于语义的三维模型检索系统和方法
US20020169803A1 (en) System and user interface for generating structured documents
CN109885569A (zh) 基于配置文件对xml数据进行字段提取及结构化方法
Hardy et al. Mapping and displaying structural transformations between xml and pdf
Castan et al. Extensible markup language (XML) for music applications: An introduction
CN111311461B (zh) 基于b-s的结构化动态病历表单的编辑器及生成方法
JPH09146931A (ja) 文書型定義生成装置
CN109582928B (zh) Pdf报表数据提取方法及装置
US8719693B2 (en) Method for storing localized XML document values
CN113657080A (zh) 一种基于xml的结构化系统及数据包创建方法
McCallum Extending MARC for Bibliographic Control in the Web Environment: Challenges and Alternatives.
JP2003288332A (ja) 構造化文書作成支援方法及び構造化文書作成支援システム
Chase XML primer plus
Bateman et al. A brief introduction to the GeM annotation schema for complex document layout
JP2002297662A (ja) 構造化文書編集方法および構造化文書編集装置および端末装置およびプログラム
Vidaković et al. Generating content and display of library catalogue cards using XML technology
CN108984676A (zh) 一种基于xml的电子书跨终端自适应显示系统及方法
Fusi Sailing for a Second Navigation: Paradigms in Producing Digital Content
Heikkinen Generalization of document structures and document assembly
Van Herwijnen The impact of XML on library procedures and services
Burget Information Extraction from HTML Documents Based on Logical Document Structure

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180216