CN110110150B - Xml数据的读取方法、读取装置、计算机设备和存储介质 - Google Patents
Xml数据的读取方法、读取装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110110150B CN110110150B CN201810008245.7A CN201810008245A CN110110150B CN 110110150 B CN110110150 B CN 110110150B CN 201810008245 A CN201810008245 A CN 201810008245A CN 110110150 B CN110110150 B CN 110110150B
- Authority
- CN
- China
- Prior art keywords
- node
- xml
- data
- unit
- sql query
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000006243 chemical reaction Methods 0.000 claims abstract description 61
- 230000014509 gene expression Effects 0.000 claims description 126
- 238000010276 construction Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004806 packaging method and process Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000003491 array Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 239000003814 drug Substances 0.000 description 5
- 238000007689 inspection Methods 0.000 description 5
- 238000013497 data interchange Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种XML数据的读取方法、读取装置、计算机设备和存储介质,其中,XML数据的读取方法包括:在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;确定SQL查询式对应的XML文件对象;通过消息转化接口提取XML文件对象中的节点值;根据树形节点结构中的节点名称与节点值生成map集合;将map集合转化为XML格式数据或json格式数据,并将XML格式数据或json格式数据发送至数据工具客户端。通过本发明技术方案,实现了服务器端根据页面XML标识自动读取XML文件系统的节点值,并组织为普通XML格式数据或json格式数据,并返回客户端,使读取方式更加灵活与方便。
Description
技术领域
本发明涉及数据获取领域,具体而言,涉及一种XML数据的读取方法、一种XML数据的读取装置、一种计算机设备和一种计算机可读存储介质。
背景技术
在相关技术中,随着医院信息化建设水平的不断提高,在长期的应用中积累了大量与宝贵的临床信息,由于这些临床信息分散存储在电子病历、收费、医嘱、药品、检验、手术等各自的业务系统中,而每个业务系统数据各自存储,由于不同系统间数据标准不一,融合困难,导致制约了医院的运行效率与医生的工作效率。
为了解决上述问题,医院引入集成平台系统,使各个相对独立的业务系统通过与集成平台系统对接进行数据交互,以实现不同业务系统之间的互联互通与数据共享,以及临床数据的集中化存储,进而使外部系统可以统一从集成平台系统访问临床数据,集成平台系统提供的图形化对外数据服务系统可以自定义Web Service或http接口,以通过编写SQL(Structured Query Language,结构化查询语言)组织查询结构化的临床数据,并返回查询结果集至浏览器客户端。
但是由于集成平台系统中对于临床数据的存储不是全部结构化存储,尤其大量的病历文书类XML(Extensible Markup Language,可扩展标记语言)格式的数据,在集成平台中采用的是文件系统存储的方式,导致存在以下缺陷:
在外部系统通过接口方式调用XML节点数据时,无法通过SQL语句灵活查询使用,尤其XML中有循环层次关系的节点数据,通过SQL语句更是无法完成节点数据抽取,导致削弱了集成平台系统对外提供数据服务的能力,同时影响了用户的使用体验。
发明内容
本发明正是基于上述技术问题至少之一,提出了一种新的XML数据的读取方案,通过调用web service或http接口,以在数据工具客户端接收到读取指令时,访问数据工服务端,以由数据工具服务端根据读取指令向数据工具客户端发送对应的XML格式数据或json格式数据,实现了在集成平台系统上对XML格式数据的访问,提升了集成平台系统上对外提供数据服务的能力,进而提升了用户的使用体验。
有鉴于此,本发明提出了一种XML数据的读取方法,适用于数据工具客户端,包括:在接收到读取指令时,调用web service或http接口,以访问数据工具服务端;接收数据工具服务端根据读取指令反馈的XML格式数据或json格式数据。
在该技术方案中,通过调用web service或http接口,以在数据工具客户端接收到读取指令时,访问数据工服务端,以由数据工具服务端根据读取指令向数据工具客户端发送对应的XML格式数据或json格式数据,实现了在集成平台系统上对XML格式数据的访问,提升了集成平台系统上对外提供数据服务的能力,进而提升了用户的使用体验。
其中,数据工具客户端为B/S(Brower/Server,浏览器/服务器模式)客户端。
json(JavaScript Object Notation),一种轻量级的数据交换格式,与XML都使用结构化方法标记数据。
在上述技术方案中,优选地,在接收到读取指令时,调用web service或http接口,以访问数据工具服务端前,还包括:接收与读取指令对应的定义的SQL查询式,SQL查询式用于查询指定存储路径字段;确定指定存储路径字段对应的XML文件;根据XML文件的节点名称与节点路径构建对应的树形节点结构;将SQL查询式与树形节点结构保存至数据库表中。
在该技术方案中,通过预设SQL查询式,以实现通过SQL查询式查询XML文件存储路径字段,从而实现通过页面SQL查询实际需要的xml文件路径,通过页面配置XML节点路径对应的节点xpath表达式,实现查询过程中XML节点路径的抽取,进而实现通过SQL语句查询XML文件,以返回结果集至浏览器客户端。
在上述任一项技术方案中,优选地,在接收定义的SQL查询式,SQL查询式用于查询指定存储路径字段前,还包括:通过图形化页面接收接口信息;接收在接口信息的返回值位置获取到的SQL语句,并将SQL语句确定为SQL查询式。
在该技术方案中,通过启动对外数据服务工具web客户端程序,在图形化的页面上编辑接口信息,并在根据接口信息产生的返回值的位置处编写SQL语句,以作为SQL查询式,通过SQL查询式查询指定类的XML文件存储路径字段(file_path),其中,file_path作为特殊标识不可改名,进而能够通过页面构建实现xml节点名称与节点路径的抽取。
其中,指定类的XML文件可以为电子病历、收费文数据、医嘱数据、药品数据、检验数据、手术数据等XML类型文件。
在上述任一项技术方案中,优选地,XML文件中的节点包括单节点和/或循环层级节点,根据XML文件的节点名称与节点路径构建对应的树形节点结构,具体包括以下步骤:定义单节点的第一节点名称;根据第一节点名称配置单节点的绝对路径的第一xpath表达式;和/或定义循环层级节点的第二节点名称;根据第二节点名称配置循环层级节点的相对路径的第二xpath表达式;根据第一节点名称与第一xpath表达式,和/或第二节点名称与第二xpath表达式构建树形节点结构。
在该技术方案中,通过在抽取单节点值时,并自定义第一节点名称,以及根据节点路径配置XML中该节点的绝对路径xpath表达式,以作为第一xpath表达式,和/或通过在抽取XML中循环层级节点值时,并自定义第二节点名称,以及通过配置父节点的xpath表达式,再配置子节点的xpath相对路径的表达式,作为第二xpath表达式,通过节点名称与xpath表达式,实现树形节点结构的页面构建,
其中,节点数据(节点名称与节点路径)来源于file_path对应的XML,节点类型包括单节点和循环层次节点。
在上述任一项技术方案中,优选地,将SQL查询式与树形节点结构保存至数据库表中,还包括:检测第一xpath表达式和/或第二xpath表达式是否具有空值;在检测到不具有空值时,将树形节点结构保存至数据库表中;在检测到具有空值时,不执行树形节点结构与SQL查询式的保存操作。
在该技术方案中,通过检测xpath表达式中是否有控制,并在检测到xpath表达式中具有空值时控制表达式不可保持,一方面,保证了保存树形节点结构至数据库表的顺利执行,另一方面,能够实现在XML文件查询式对xpath表达式的准确调用。
在上述任一项技术方案中,优选地,其特征在于,将SQL查询式与树形节点结构保存至数据库表中,还包括:采用表外键将对应的SQL查询式与树形节点结构进行关联。
在该技术方案中,将SQL表达式树形节点结构分别存储数据库表中,并通过表外键关联,实现了SQL表达式与对应的树形节点结构之间的连接,进而实现了通过SQL表达式对对应的XML文件的查询操作。
根据本发明第二方面,还提出了一种XML数据的读取方法,适用于数据工具服务端,包括:在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;确定SQL查询式对应的XML文件对象;通过消息转化接口提取XML文件对象中的节点值;根据树形节点结构中的节点名称与节点值生成map集合;将map集合转化为XML格式数据或json格式数据,并将XML格式数据或json格式数据发送至数据工具客户端。
在该技术方案中,通过在接收到由web service或http接口传输的访问请求时,获取预存在数据库表中的对应的SQL查询式,以根据SQL查询式查询XML文件存储路径字段,进而根据XML文件存储路径字段确定对应的XML文件对象,通过调用消息转化接口提取XML文件对象中的节点值,以根据节点值与节点名称生成map集合,进而将map集合转化为XML格式数据或json格式数据,实现了服务器端根据页面XML标识自动读取XML文件系统的节点值,并组织为普通XML格式数据或json格式数据,并返回客户端,使读取方式更加灵活与方便。
具体地,在数据工具服务端启动后,数据工具客户端通过浏览器调用web service或http接口访问数据工具服务端,首先数据工具服务端从数据库获取SQL查询式,以查询出file_path,根据file_path获取XML的文件路径,并利用java文件操作类根据XML文件路径获取XML文件,并转化为字节数组,以把XML文件转为字符串,然后数据工具服务端从数据库获取树形节点结构,以根据树形节点结构获取节点名称集合与节点xpath集合,并转化为map集合,通过调用消息转化接口,抽取xml字符串中的节点值,以使消息转化接口返回节点名称与节点值的map集合。
在上述技术方案中,优选地,确定SQL查询式对应的XML文件对象,具体包括以下步骤:根据SQL查询式执行查询操作,以获取读取指令对应的存储路径字段;根据存储路径获取XML文件,并将XML文件封装为文件对象。
在该技术方案中,通过数据工具服务端根据接口信息调用SQL查询集成平台数据库,以调用SQL查询式,进而从结果集返回xml文件路径,根据文件绝对路径查询xml封装为文件对象。
在上述任一项技术方案中,优选地,通过消息转化接口提取XML文件对象中的节点值,具体包括以下步骤:调用数据库表中与SQL查询式对应的树形节点结构,以查询xpath表达式集合与节点名称;根据文件对象与xpath表达式集合调用消息转化接口;通过消息转化接口将文件对象转化为XML字符串;通过消息转化接口采用jdom根据xpath表达式集合抽取XML字符串中的节点值。
在该技术方案中,通过调用数据库表中的树形节点结构,获取xpath数据表,从xpath数据表查询xpath集合,根据文件对象与xpath集合调用消息转化接口,消息转化接口根据文件对象与xpath集合,并利用利用jdom(使用XML的独特JAVA工具包,包含java语言的语法乃至语义,通过javad代码访问、操作并输出XML数据)抽取节点值返回节点值集合,jdom对于树形结构解析非常方便,快捷。
在上述任一项技术方案中,优选地,据树形节点结构中的节点名称与节点值生成map集合,具体包括以下步骤:根据树形节点结构确定节点名称与节点值的映射关系;根据映射关系生成map集合。
在该技术方案中,Map提供了一个更通用的元素存储方法。Map集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值,其中,节点名称作为“键”,对应地,节点值作为“值”。
在上述任一项技术方案中,优选地,将map集合转化为XML格式数据或json格式数据,具体包括以下步骤:根据递归方式将map集合转化为XML格式数据或json格式数据。
在该技术方案中,通过递归方式把map集合转为普通XML格式或json格式,XML的节点名称对应页面配置的节点名称,节点值即是根据该节点配置的xpath从XML字符串中抽取的值,循环节点层次与页面配置的循环层次结构一致,最后返回浏览器调用的接口数据,实现了XML格式或json格式数据的读取。
根据本发明第三方面,还提出了一种XML数据的读取装置,适用于数据工具客户端,包括:调用单元,用于在接收到读取指令时,调用webservice或http接口,以访问数据工具服务端;接收单元,用于接收数据工具服务端根据读取指令反馈的XML格式数据或json格式数据。
在该技术方案中,通过调用web service或http接口,以在数据工具客户端接收到读取指令时,访问数据工服务端,以由数据工具服务端根据读取指令向数据工具客户端发送对应的XML格式数据或json格式数据,实现了在集成平台系统上对XML格式数据的访问,提升了集成平台系统上对外提供数据服务的能力,进而提升了用户的使用体验。
其中,数据工具客户端为B/S(Brower/Server,浏览器/服务器模式)客户端。
json(JavaScript Object Notation),一种轻量级的数据交换格式,与XML都使用结构化方法标记数据。
在上述技术方案中,优选地,接收单元还用于:接收与读取指令对应的定义的SQL查询式,SQL查询式用于查询指定存储路径字段;读取装置还包括:确定单元,用于确定指定存储路径字段对应的XML文件;构建单元,用于根据XML文件的节点名称与节点路径构建对应的树形节点结构;保存单元,用于将SQL查询式与树形节点结构保存至数据库表中。
在该技术方案中,通过预设SQL查询式,以实现通过SQL查询式查询XML文件存储路径字段,从而实现通过页面SQL查询实际需要的xml文件路径,通过页面配置XML节点路径对应的节点xpath表达式,实现查询过程中XML节点路径的抽取,进而实现通过SQL语句查询XML文件,以返回结果集至浏览器客户端。
在上述任一项技术方案中,优选地,接收单元还用于:通过图形化页面接收接口信息;接收单元还用于:接收在接口信息的返回值位置获取到的SQL语句,并将SQL语句确定为SQL查询式。
在该技术方案中,通过启动对外数据服务工具web客户端程序,在图形化的页面上编辑接口信息,并在根据接口信息产生的返回值的位置处编写SQL语句,以作为SQL查询式,通过SQL查询式查询指定类的XML文件存储路径字段(file_path),其中,file_path作为特殊标识不可改名,进而能够通过页面构建实现xml节点名称与节点路径的抽取。
其中,指定类的XML文件可以为电子病历、收费文数据、医嘱数据、药品数据、检验数据、手术数据等XML类型文件。
在上述任一项技术方案中,优选地,还包括:定义单元,用于定义单节点的第一节点名称;配置单元,用于根据第一节点名称配置单节点的绝对路径的第一xpath表达式;定义单元还用于:定义循环层级节点的第二节点名称;配置单元还用于:根据第二节点名称配置循环层级节点的相对路径的第二xpath表达式;构建单元还用于:根据第一节点名称与第一xpath表达式,和/或第二节点名称与第二xpath表达式构建树形节点结构。
在该技术方案中,通过在抽取单节点值时,并自定义第一节点名称,以及根据节点路径配置XML中该节点的绝对路径xpath表达式,以作为第一xpath表达式,和/或通过在抽取XML中循环层级节点值时,并自定义第二节点名称,以及通过配置父节点的xpath表达式,再配置子节点的xpath相对路径的表达式,作为第二xpath表达式,通过节点名称与xpath表达式,实现树形节点结构的页面构建,
其中,节点数据(节点名称与节点路径)来源于file_path对应的XML,节点类型包括单节点和循环层次节点。
在上述任一项技术方案中,优选地,还包括:检测单元,用于检测第一xpath表达式和/或第二xpath表达式是否具有空值;保存单元还用于:在检测到不具有空值时,将树形节点结构保存至数据库表中;保存单元还用于:在检测到具有空值时,不执行树形节点结构与SQL查询式的保存操作。
在该技术方案中,通过检测xpath表达式中是否有控制,并在检测到xpath表达式中具有空值时控制表达式不可保持,一方面,保证了保存树形节点结构至数据库表的顺利执行,另一方面,能够实现在XML文件查询式对xpath表达式的准确调用。
在上述任一项技术方案中,优选地,还包括:关联单元,用于采用表外键将对应的SQL查询式与树形节点结构进行关联。
在该技术方案中,将SQL表达式树形节点结构分别存储数据库表中,并通过表外键关联,实现了SQL表达式与对应的树形节点结构之间的连接,进而实现了通过SQL表达式对对应的XML文件的查询操作。
根据本发明第四方面,还提出了一种XML数据的读取装置,适用于数据工具服务端,包括:获取单元,用于在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;确定单元,用于确定SQL查询式对应的XML文件对象;提取单元,用于通过消息转化接口提取XML文件对象中的节点值;生成单元,用于根据树形节点结构中的节点名称与节点值生成map集合;转化单元,用于将map集合转化为XML格式数据或json格式数据,并将XML格式数据或json格式数据发送至数据工具客户端。
在该技术方案中,通过在接收到由web service或http接口传输的访问请求时,获取预存在数据库表中的对应的SQL查询式,以根据SQL查询式查询XML文件存储路径字段,进而根据XML文件存储路径字段确定对应的XML文件对象,通过调用消息转化接口提取XML文件对象中的节点值,以根据节点值与节点名称生成map集合,进而将map集合转化为XML格式数据或json格式数据,实现了服务器端根据页面XML标识自动读取XML文件系统的节点值,并组织为普通XML格式数据或json格式数据,并返回客户端,使读取方式更加灵活与方便。
具体地,在数据工具服务端启动后,数据工具客户端通过浏览器调用web service或http接口访问数据工具服务端,首先数据工具服务端从数据库获取SQL查询式,以查询出file_path,根据file_path获取XML的文件路径,并利用java文件操作类根据XML文件路径获取XML文件,并转化为字节数组,以把XML文件转为字符串,然后数据工具服务端从数据库获取树形节点结构,以根据树形节点结构获取节点名称集合与节点xpath集合,并转化为map集合,通过调用消息转化接口,抽取xml字符串中的节点值,以使消息转化接口返回节点名称与节点值的map集合。
在上述技术方案中,优选地,还包括:查询单元,用于根据SQL查询式执行查询操作,以获取读取指令对应的存储路径字段;获取单元还用于:根据存储路径获取XML文件,并将XML文件封装为文件对象。
在该技术方案中,通过数据工具服务端根据接口信息调用SQL查询集成平台数据库,以调用SQL查询式,进而从结果集返回xml文件路径,根据文件绝对路径查询xml封装为文件对象。
在上述任一项技术方案中,优选地,还包括:调用单元,用于调用数据库表中与SQL查询式对应的树形节点结构,以查询xpath表达式集合与节点名称;调用单元还用于:根据文件对象与xpath表达式集合调用消息转化接口;转化单元还用于:通过消息转化接口将文件对象转化为XML字符串;读取装置还包括:抽取单元,用于通过消息转化接口采用jdom根据xpath表达式集合抽取XML字符串中的节点值。
在该技术方案中,通过调用数据库表中的树形节点结构,获取xpath数据表,从xpath数据表查询xpath集合,根据文件对象与xpath集合调用消息转化接口,消息转化接口根据文件对象与xpath集合,并利用利用jdom(使用XML的独特JAVA工具包,包含java语言的语法乃至语义,通过javad代码访问、操作并输出XML数据)抽取节点值返回节点值集合,jdom对于树形结构解析非常方便,快捷。
在上述任一项技术方案中,优选地,确定单元还用于:根据树形节点结构确定节点名称与节点值的映射关系;生成单元还用于:根据映射关系生成map集合。
在该技术方案中,Map提供了一个更通用的元素存储方法。Map集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值,其中,节点名称作为“键”,对应地,节点值作为“值”。
在上述任一项技术方案中,优选地,转化单元还用于:根据递归方式将map集合转化为XML格式数据或json格式数据。
在该技术方案中,通过递归方式把map集合转为普通XML格式或json格式,XML的节点名称对应页面配置的节点名称,节点值即是根据该节点配置的xpath从XML字符串中抽取的值,循环节点层次与页面配置的循环层次结构一致,最后返回浏览器调用的接口数据,实现了XML格式或json格式数据的读取。
根据本发明的第五方面,提出了一种计算机设备,计算机设备包括处理器,处理器用于执行存储器中存储的计算机程序时实现如上述第一方面和第二方面的技术方案中任一项的XML数据的读取方法的步骤。
根据本发明的第六方面,提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面和第二方面的技术方案中任一项的XML数据的读取方法的步骤。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1示出了根据本发明的一个实施例的XML数据的读取方法的示意流程图;
图2示出了根据本发明的另一个实施例的XML数据的读取方法的示意流程图;
图3示出了根据本发明的一个实施例的XML数据的读取装置的示意框图;
图4示出了根据本发明的另一个实施例的XML数据的读取装置的示意框图;
图5示出了根据本发明的再一个实施例的XML数据的读取方法的示意流程图;
图6示出了根据本发明的实施例的计算机设备的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用第三方不同于在此描述的第三方方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了根据本发明的一个实施例的XML数据的读取方法的示意流程图。
如图1所示,根据本发明的一个实施例的XML数据的读取方法,适用于数据工具客户端,包括:步骤102,在接收到读取指令时,调用webservice或http接口,以访问数据工具服务端;步骤104,接收数据工具服务端根据读取指令反馈的XML格式数据或json格式数据。
在该实施例中,通过调用web service或http接口,以在数据工具客户端接收到读取指令时,访问数据工服务端,以由数据工具服务端根据读取指令向数据工具客户端发送对应的XML格式数据或json格式数据,实现了在集成平台系统上对XML格式数据的访问,提升了集成平台系统上对外提供数据服务的能力,进而提升了用户的使用体验。
其中,数据工具客户端为B/S(Brower/Server,浏览器/服务器模式)客户端。
json(JavaScript Object Notation),一种轻量级的数据交换格式,与XML都使用结构化方法标记数据。
在上述实施例中,优选地,在接收到读取指令时,调用web service或http接口,以访问数据工具服务端前,还包括:接收与读取指令对应的定义的SQL查询式,SQL查询式用于查询指定存储路径字段;确定指定存储路径字段对应的XML文件;根据XML文件的节点名称与节点路径构建对应的树形节点结构;将SQL查询式与树形节点结构保存至数据库表中。
在该实施例中,通过预设SQL查询式,以实现通过SQL查询式查询XML文件存储路径字段,从而实现通过页面SQL查询实际需要的xml文件路径,通过页面配置XML节点路径对应的节点xpath表达式,实现查询过程中XML节点路径的抽取,进而实现通过SQL语句查询XML文件,以返回结果集至浏览器客户端。
在上述任一项实施例中,优选地,在接收定义的SQL查询式,SQL查询式用于查询指定存储路径字段前,还包括:通过图形化页面接收接口信息;接收在接口信息的返回值位置获取到的SQL语句,并将SQL语句确定为SQL查询式。
在该实施例中,通过启动对外数据服务工具web客户端程序,在图形化的页面上编辑接口信息,并在根据接口信息产生的返回值的位置处编写SQL语句,以作为SQL查询式,通过SQL查询式查询指定类的XML文件存储路径字段(file_path),其中,file_path作为特殊标识不可改名,进而能够通过页面构建实现xml节点名称与节点路径的抽取。
其中,指定类的XML文件可以为电子病历、收费文数据、医嘱数据、药品数据、检验数据、手术数据等XML类型文件。
在上述任一项实施例中,优选地,XML文件中的节点包括单节点和/或循环层级节点,根据XML文件的节点名称与节点路径构建对应的树形节点结构,具体包括以下步骤:定义单节点的第一节点名称;根据第一节点名称配置单节点的绝对路径的第一xpath表达式;和/或定义循环层级节点的第二节点名称;根据第二节点名称配置循环层级节点的相对路径的第二xpath表达式;根据第一节点名称与第一xpath表达式,和/或第二节点名称与第二xpath表达式构建树形节点结构。
在该实施例中,通过在抽取单节点值时,并自定义第一节点名称,以及根据节点路径配置XML中该节点的绝对路径xpath表达式,以作为第一xpath表达式,和/或通过在抽取XML中循环层级节点值时,并自定义第二节点名称,以及通过配置父节点的xpath表达式,再配置子节点的xpath相对路径的表达式,作为第二xpath表达式,通过节点名称与xpath表达式,实现树形节点结构的页面构建,
其中,节点数据(节点名称与节点路径)来源于file_path对应的XML,节点类型包括单节点和循环层次节点。
在上述任一项实施例中,优选地,将SQL查询式与树形节点结构保存至数据库表中,还包括:检测第一xpath表达式和/或第二xpath表达式是否具有空值;在检测到不具有空值时,将树形节点结构保存至数据库表中;在检测到具有空值时,不执行树形节点结构与SQL查询式的保存操作。
在该实施例中,通过检测xpath表达式中是否有控制,并在检测到xpath表达式中具有空值时控制表达式不可保持,一方面,保证了保存树形节点结构至数据库表的顺利执行,另一方面,能够实现在XML文件查询式对xpath表达式的准确调用。
在上述任一项实施例中,优选地,其特征在于,将SQL查询式与树形节点结构保存至数据库表中,还包括:采用表外键将对应的SQL查询式与树形节点结构进行关联。
在该实施例中,将SQL表达式树形节点结构分别存储数据库表中,并通过表外键关联,实现了SQL表达式与对应的树形节点结构之间的连接,进而实现了通过SQL表达式对对应的XML文件的查询操作。
图2示出了根据本发明的另一个实施例的XML数据的读取方法的示意流程图。
如图2所示,根据本发明的另一个实施例的XML数据的读取方法,适用于数据工具服务端,包括:步骤202,在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;步骤204,确定SQL查询式对应的XML文件对象;步骤206,通过消息转化接口提取XML文件对象中的节点值;步骤208,根据树形节点结构中的节点名称与节点值生成map集合;步骤210,将map集合转化为XML格式数据或json格式数据,并将XML格式数据或json格式数据发送至数据工具客户端。
在该实施例中,通过在接收到由web service或http接口传输的访问请求时,获取预存在数据库表中的对应的SQL查询式,以根据SQL查询式查询XML文件存储路径字段,进而根据XML文件存储路径字段确定对应的XML文件对象,通过调用消息转化接口提取XML文件对象中的节点值,以根据节点值与节点名称生成map集合,进而将map集合转化为XML格式数据或json格式数据,实现了服务器端根据页面XML标识自动读取XML文件系统的节点值,并组织为普通XML格式数据或json格式数据,并返回客户端,使读取方式更加灵活与方便。
具体地,在数据工具服务端启动后,数据工具客户端通过浏览器调用web service或http接口访问数据工具服务端,首先数据工具服务端从数据库获取SQL查询式,以查询出file_path,根据file_path获取XML的文件路径,并利用java文件操作类根据XML文件路径获取XML文件,并转化为字节数组,以把XML文件转为字符串,然后数据工具服务端从数据库获取树形节点结构,以根据树形节点结构获取节点名称集合与节点xpath集合,并转化为map集合,通过调用消息转化接口,抽取xml字符串中的节点值,以使消息转化接口返回节点名称与节点值的map集合。
在上述实施例中,优选地,确定SQL查询式对应的XML文件对象,具体包括以下步骤:根据SQL查询式执行查询操作,以获取读取指令对应的存储路径字段;根据存储路径获取XML文件,并将XML文件封装为文件对象。
在该实施例中,通过数据工具服务端根据接口信息调用SQL查询集成平台数据库,以调用SQL查询式,进而从结果集返回xml文件路径,根据文件绝对路径查询xml封装为文件对象。
在上述任一项实施例中,优选地,通过消息转化接口提取XML文件对象中的节点值,具体包括以下步骤:调用数据库表中与SQL查询式对应的树形节点结构,以查询xpath表达式集合与节点名称;根据文件对象与xpath表达式集合调用消息转化接口;通过消息转化接口将文件对象转化为XML字符串;通过消息转化接口采用jdom根据xpath表达式集合抽取XML字符串中的节点值。
在该实施例中,通过调用数据库表中的树形节点结构,获取xpath数据表,从xpath数据表查询xpath集合,根据文件对象与xpath集合调用消息转化接口,消息转化接口根据文件对象与xpath集合,并利用利用jdom(使用XML的独特JAVA工具包,包含java语言的语法乃至语义,通过javad代码访问、操作并输出XML数据)抽取节点值返回节点值集合,jdom对于树形结构解析非常方便,快捷。
在上述任一项实施例中,优选地,据树形节点结构中的节点名称与节点值生成map集合,具体包括以下步骤:根据树形节点结构确定节点名称与节点值的映射关系;根据映射关系生成map集合。
在该实施例中,Map提供了一个更通用的元素存储方法。Map集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值,其中,节点名称作为“键”,对应地,节点值作为“值”。
在上述任一项实施例中,优选地,将map集合转化为XML格式数据或json格式数据,具体包括以下步骤:根据递归方式将map集合转化为XML格式数据或json格式数据。
在该实施例中,通过递归方式把map集合转为普通XML格式或json格式,XML的节点名称对应页面配置的节点名称,节点值即是根据该节点配置的xpath从XML字符串中抽取的值,循环节点层次与页面配置的循环层次结构一致,最后返回浏览器调用的接口数据,实现了XML格式或json格式数据的读取。
图3示出了根据本发明的一个实施例的XML数据的读取装置的示意框图。
如图3所示。根据本发明的一个实施例的XML数据的读取装置300,适用于数据工具客户端,包括:调用单元302,用于在接收到读取指令时,调用web service或http接口,以访问数据工具服务端;接收单元304,用于接收数据工具服务端根据读取指令反馈的XML格式数据或json格式数据。
在该实施例中,通过调用web service或http接口,以在数据工具客户端接收到读取指令时,访问数据工服务端,以由数据工具服务端根据读取指令向数据工具客户端发送对应的XML格式数据或json格式数据,实现了在集成平台系统上对XML格式数据的访问,提升了集成平台系统上对外提供数据服务的能力,进而提升了用户的使用体验。
其中,数据工具客户端为B/S(Brower/Server,浏览器/服务器模式)客户端。
json(JavaScript Object Notation),一种轻量级的数据交换格式,与XML都使用结构化方法标记数据。
在上述实施例中,优选地,接收单元304还用于:接收与读取指令对应的定义的SQL查询式,SQL查询式用于查询指定存储路径字段;读取装置300还包括:确定单元306,用于确定指定存储路径字段对应的XML文件;构建单元308,用于根据XML文件的节点名称与节点路径构建对应的树形节点结构;保存单元310,用于将SQL查询式与树形节点结构保存至数据库表中。
在该实施例中,通过预设SQL查询式,以实现通过SQL查询式查询XML文件存储路径字段,从而实现通过页面SQL查询实际需要的xml文件路径,通过页面配置XML节点路径对应的节点xpath表达式,实现查询过程中XML节点路径的抽取,进而实现通过SQL语句查询XML文件,以返回结果集至浏览器客户端。
在上述任一项实施例中,优选地,接收单元304还用于:通过图形化页面接收接口信息;接收单元304还用于:接收在接口信息的返回值位置获取到的SQL语句,并将SQL语句确定为SQL查询式。
在该实施例中,通过启动对外数据服务工具web客户端程序,在图形化的页面上编辑接口信息,并在根据接口信息产生的返回值的位置处编写SQL语句,以作为SQL查询式,通过SQL查询式查询指定类的XML文件存储路径字段(file_path),其中,file_path作为特殊标识不可改名,进而能够通过页面构建实现xml节点名称与节点路径的抽取。
其中,指定类的XML文件可以为电子病历、收费文数据、医嘱数据、药品数据、检验数据、手术数据等XML类型文件。
在上述任一项实施例中,优选地,读取装置300还包括:定义单元312,用于定义单节点的第一节点名称;配置单元314,用于根据第一节点名称配置单节点的绝对路径的第一xpath表达式;定义单元312还用于:定义循环层级节点的第二节点名称;配置单元314还用于:根据第二节点名称配置循环层级节点的相对路径的第二xpath表达式;构建单元308还用于:根据第一节点名称与第一xpath表达式,和/或第二节点名称与第二xpath表达式构建树形节点结构。
在该实施例中,通过在抽取单节点值时,并自定义第一节点名称,以及根据节点路径配置XML中该节点的绝对路径xpath表达式,以作为第一xpath表达式,和/或通过在抽取XML中循环层级节点值时,并自定义第二节点名称,以及通过配置父节点的xpath表达式,再配置子节点的xpath相对路径的表达式,作为第二xpath表达式,通过节点名称与xpath表达式,实现树形节点结构的页面构建,
其中,节点数据(节点名称与节点路径)来源于file_path对应的XML,节点类型包括单节点和循环层次节点。
在上述任一项实施例中,优选地,读取装置300还包括:检测单元316,用于检测第一xpath表达式和/或第二xpath表达式是否具有空值;保存单元310还用于:在检测到不具有空值时,将树形节点结构保存至数据库表中;保存单元310还用于:在检测到具有空值时,不执行树形节点结构与SQL查询式的保存操作。
在该实施例中,通过检测xpath表达式中是否有控制,并在检测到xpath表达式中具有空值时控制表达式不可保持,一方面,保证了保存树形节点结构至数据库表的顺利执行,另一方面,能够实现在XML文件查询式对xpath表达式的准确调用。
在上述任一项实施例中,优选地,读取装置300还包括:关联单元318,用于采用表外键将对应的SQL查询式与树形节点结构进行关联。
在该实施例中,将SQL表达式树形节点结构分别存储数据库表中,并通过表外键关联,实现了SQL表达式与对应的树形节点结构之间的连接,进而实现了通过SQL表达式对对应的XML文件的查询操作。
图4示出了根据本发明的另一个实施例的XML数据的读取装置的示意框图。
如图4所示,根据本发明的另一个实施例的XML数据的读取装置400,适用于数据工具服务端,包括:获取单元402,用于在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;确定单元404,用于确定SQL查询式对应的XML文件对象;提取单元406,用于通过消息转化接口提取XML文件对象中的节点值;生成单元408,用于根据树形节点结构中的节点名称与节点值生成map集合;转化单元410,用于将map集合转化为XML格式数据或json格式数据,并将XML格式数据或json格式数据发送至数据工具客户端。
在该实施例中,通过在接收到由web service或http接口传输的访问请求时,获取预存在数据库表中的对应的SQL查询式,以根据SQL查询式查询XML文件存储路径字段,进而根据XML文件存储路径字段确定对应的XML文件对象,通过调用消息转化接口提取XML文件对象中的节点值,以根据节点值与节点名称生成map集合,进而将map集合转化为XML格式数据或json格式数据,实现了服务器端根据页面XML标识自动读取XML文件系统的节点值,并组织为普通XML格式数据或json格式数据,并返回客户端,使读取方式更加灵活与方便。
具体地,在数据工具服务端启动后,数据工具客户端通过浏览器调用web service或http接口访问数据工具服务端,首先数据工具服务端从数据库获取SQL查询式,以查询出file_path,根据file_path获取XML的文件路径,并利用java文件操作类根据XML文件路径获取XML文件,并转化为字节数组,以把XML文件转为字符串,然后数据工具服务端从数据库获取树形节点结构,以根据树形节点结构获取节点名称集合与节点xpath集合,并转化为map集合,通过调用消息转化接口,抽取xml字符串中的节点值,以使消息转化接口返回节点名称与节点值的map集合。
在上述实施例中,优选地,读取装置400还包括:查询单元412,用于根据SQL查询式执行查询操作,以获取读取指令对应的存储路径字段;获取单元402还用于:根据存储路径获取XML文件,并将XML文件封装为文件对象。
在该实施例中,通过数据工具服务端根据接口信息调用SQL查询集成平台数据库,以调用SQL查询式,进而从结果集返回xml文件路径,根据文件绝对路径查询xml封装为文件对象。
在上述任一项实施例中,优选地,读取装置400还包括:调用单元414,用于调用数据库表中与SQL查询式对应的树形节点结构,以查询xpath表达式集合与节点名称;调用单元414还用于:根据文件对象与xpath表达式集合调用消息转化接口;转化单元410还用于:通过消息转化接口将文件对象转化为XML字符串;读取装置400还包括:抽取单元416,用于通过消息转化接口采用jdom根据xpath表达式集合抽取XML字符串中的节点值。
在该实施例中,通过调用数据库表中的树形节点结构,获取xpath数据表,从xpath数据表查询xpath集合,根据文件对象与xpath集合调用消息转化接口,消息转化接口根据文件对象与xpath集合,并利用利用jdom(使用XML的独特JAVA工具包,包含java语言的语法乃至语义,通过javad代码访问、操作并输出XML数据)抽取节点值返回节点值集合,jdom对于树形结构解析非常方便,快捷。
在上述任一项实施例中,优选地,确定单元404还用于:根据树形节点结构确定节点名称与节点值的映射关系;生成单元408还用于:根据映射关系生成map集合。
在该实施例中,Map提供了一个更通用的元素存储方法。Map集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值,其中,节点名称作为“键”,对应地,节点值作为“值”。
在上述任一项实施例中,优选地,转化单元410还用于:根据递归方式将map集合转化为XML格式数据或json格式数据。
在该实施例中,通过递归方式把map集合转为普通XML格式或json格式,XML的节点名称对应页面配置的节点名称,节点值即是根据该节点配置的xpath从XML字符串中抽取的值,循环节点层次与页面配置的循环层次结构一致,最后返回浏览器调用的接口数据,实现了XML格式或json格式数据的读取。
图5示出了根据本发明的再一个实施例的XML数据的读取方法的示意流程图。
如图5所示,根据本发明的再一个实施例的XML数据的读取方法,包括:步骤502,通过对外数据工具客户端定义SQL查询式、配置XML树形节点结构;步骤504,校验并保存SQL查询式与树形节点结构(包括节点名称及对应的xpath表达式)至数据库表;步骤506,校验xpath是否为空值,在检测结果为“是”时,结束进程,在检测结果为“否”时,进入步骤508;步骤508,对外数据工具客户端调用Web service或http接口访问对外数据工具服务端;步骤510,对外数据工具服务端查询SQL查询式以获取XML文件,查询xpath集合并调用消息转化接口;步骤512,消息转化接口利用jdom,根据xpath解析XML文件,并返回封装结果集合;步骤514,封装结果集合数据为普通XML格式数据或json格式数据,并将普通XML格式数据或json格式数据返回对外数据客户端。
具体地,通过对外数据服务工具(B/S客户端)编辑SQL语句,结果列必须有file_path字段,xml节点名称与路径通过页面的树形节点结构配置,树形节点结构更能体现父子层次节点的结构,节点路径通过配置xpath体现,xpath路径中能够体现命名空间。树形节点结构中保存时节点名称必须填写xpath,而SQL的列名中必须有file_path字段。在校验节点xpath不为空,通过后保存至对外数据服务数据库。对外数据服务工具通过浏览器调用webservice或http接口访问对外数据工具服务端,目的返回sql结果集。对外数据工具服务端根据接口信息调用SQL查询集成平台数据库,从结果集返回XML文件路径,根据文件绝对路径查询xml封装为文件对象,从xpath数据表查询xpath集合,以将文件对象与xpath集合作为参数调用消息转化接口。消息转化接口根据xml文件对象与xpath集合,利用jdom抽取节点值返回节点值集合,其中,jdom对于树形结构解析非常方便,快捷。对外数据工具服务端封装节点值集合为普通xml或json格式返回值对外数据工具客户端。
如图6所示,根据本公开实施例的实施例的计算机设备60,包括存储器602、处理器604及存储在所述存储器602上并可在所述处理器604上运行的计算机程序,其中存储器602和处理器604之间可以通过总线连接,所述处理器604用于执行存储器602中存储的计算机程序时实现如上实施例中所述的XML数据的读取方法的步骤。
本发明实施例的方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例的XML数据的读取装置和计算机设备中的单元可以根据实际需要进行合并、划分和删减。
根据本发明的实施例,提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上实施例中所述的XML数据的读取方法的步骤。
进一步地,可以理解的是,流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
进一步地,上述提到的计算机设备可以为PC(Personal Computer,个人电脑)端,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,实现了在集成平台系统上对XML格式数据的访问,提升了集成平台系统上对外提供数据服务的能力,进而提升了用户的使用体验。
在本发明中,术语“第一”和“第二”仅用于描述的目的,而不能理解为指示或暗示相对重要性,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种XML数据的读取方法,适用于数据工具客户端,其特征在于,包括:
在接收到读取指令时,调用web service或http接口,以访问数据工具服务端;
接收所述数据工具服务端根据所述读取指令反馈的XML格式数据或json格式数据;
所述在接收到读取指令时,调用web service或http接口,以访问数据工具服务端前,还包括:
接收与所述读取指令对应的定义的SQL查询式,所述SQL查询式用于查询指定存储路径字段;
确定所述指定存储路径字段对应的XML文件;
根据所述XML文件的节点名称与节点路径构建对应的树形节点结构;
将所述SQL查询式与所述树形节点结构保存至数据库表中;
所述XML文件中的节点包括单节点和/或循环层级节点,所述根据所述XML文件的节点名称与节点路径构建对应的树形节点结构,具体包括以下步骤:
定义所述单节点的第一节点名称;
根据所述第一节点名称配置所述单节点的绝对路径的第一xpath表达式;和/或
定义所述循环层级节点的第二节点名称;
根据所述第二节点名称配置所述循环层级节点的相对路径的第二xpath表达式;
根据所述第一节点名称与所述第一xpath表达式,和/或所述第二节点名称与所述第二xpath表达式构建所述树形节点结构。
2.根据权利要求1所述的XML数据的读取方法,其特征在于,在接收定义的SQL查询式,所述SQL查询式用于查询指定存储路径字段前,还包括:
通过图形化页面接收接口信息;
接收在所述接口信息的返回值位置获取到的SQL语句,并将所述SQL语句确定为所述SQL查询式。
3.根据权利要求1所述的XML数据的读取方法,其特征在于,将所述SQL查询式与所述树形节点结构保存至数据库表中,还包括:
检测所述第一xpath表达式和/或所述第二xpath表达式是否具有空值;
在检测到不具有所述空值时,将所述树形节点结构保存至所述数据库表中;
在检测到具有所述空值时,不执行所述树形节点结构与所述SQL查询式的保存操作。
4.根据权利要求1至3中任一项所述的XML数据的读取方法,其特征在于,将所述SQL查询式与所述树形节点结构保存至数据库表中,还包括:
采用表外键将对应的所述SQL查询式与所述树形节点结构进行关联。
5.一种XML数据的读取方法,适用于数据工具服务端,其特征在于,XML文件中的节点包括单节点和/或循环层级节点,所述读取方法包括:
定义所述单节点的第一节点名称;
根据所述第一节点名称配置所述单节点的绝对路径的第一xpath表达式;和/或
定义所述循环层级节点的第二节点名称;
根据所述第二节点名称配置所述循环层级节点的相对路径的第二xpath表达式;
根据所述第一节点名称与所述第一xpath表达式,和/或所述第二节点名称与所述第二xpath表达式构建树形节点结构;
在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;
确定所述SQL查询式对应的XML文件对象;
通过消息转化接口提取所述XML文件对象中的节点值;
根据所述树形节点结构中的节点名称与所述节点值生成map集合;
将所述map集合转化为XML格式数据或json格式数据,并将所述XML格式数据或json格式数据发送至所述数据工具客户端;
所述确定所述SQL查询式对应的XML文件对象,具体包括以下步骤:
根据所述SQL查询式执行查询操作,以获取所述读取指令对应的存储路径字段;
根据所述存储路径获取所述XML文件,并将所述XML文件封装为所述文件对象;
所述通过消息转化接口提取所述XML文件对象中的节点值,具体包括以下步骤:
调用所述数据库表中与所述SQL查询式对应的树形节点结构,以查询xpath表达式集合与节点名称;
根据所述文件对象与所述xpath表达式集合调用消息转化接口;
通过所述消息转化接口将所述文件对象转化为XML字符串;
通过所述消息转化接口采用jdom根据所述xpath表达式集合抽取所述XML字符串中的所述节点值。
6.根据权利要求5所述的XML数据的读取方法,其特征在于,所述根据树形节点结构中的节点名称与所述节点值生成map集合,具体包括以下步骤:
根据所述树形节点结构确定所述节点名称与所述节点值的映射关系;
根据所述映射关系生成所述map集合。
7.根据权利要求5或6所述的XML数据的读取方法,其特征在于,所述将所述map集合转化为XML格式数据或json格式数据,具体包括以下步骤:
根据递归方式将所述map集合转化为XML格式数据或json格式数据。
8.一种XML数据的读取装置,适用于数据工具客户端,其特征在于,包括:
调用单元,用于在接收到读取指令时,调用web service或http接口,以访问数据工具服务端;
接收单元,用于接收所述数据工具服务端根据所述读取指令反馈的XML格式数据或json格式数据;
所述接收单元还用于:接收与所述读取指令对应的定义的SQL查询式,所述SQL查询式用于查询指定存储路径字段;
所述读取装置还包括:
确定单元,用于确定所述指定存储路径字段对应的XML文件,其中,所述XML文件中的节点包括单节点和/或循环层级节点;
构建单元,用于根据所述XML文件的节点名称与节点路径构建对应的树形节点结构;
保存单元,用于将所述SQL查询式与所述树形节点结构保存至数据库表中;
定义单元,用于定义所述单节点的第一节点名称;
配置单元,用于根据所述第一节点名称配置所述单节点的绝对路径的第一xpath表达式;
所述定义单元还用于:定义所述循环层级节点的第二节点名称;
所述配置单元还用于:根据所述第二节点名称配置所述循环层级节点的相对路径的第二xpath表达式;
所述构建单元还用于:根据所述第一节点名称与所述第一xpath表达式,和/或所述第二节点名称与所述第二xpath表达式构建所述树形节点结构。
9.根据权利要求8所述的XML数据的读取装置,其特征在于,
所述接收单元还用于:通过图形化页面接收接口信息;
所述接收单元还用于:接收在所述接口信息的返回值位置获取到的SQL语句,并将所述SQL语句确定为所述SQL查询式。
10.根据权利要求8所述的XML数据的读取装置,其特征在于,还包括:
检测单元,用于检测所述第一xpath表达式和/或所述第二xpath表达式是否具有空值;
所述保存单元还用于:在检测到不具有所述空值时,将所述树形节点结构保存至所述数据库表中;
所述保存单元还用于:在检测到具有所述空值时,不执行所述树形节点结构与所述SQL查询式的保存操作。
11.根据权利要求8至10中任一项所述的XML数据的读取装置,其特征在于,还包括:
关联单元,用于采用表外键将对应的所述SQL查询式与所述树形节点结构进行关联。
12.一种XML数据的读取装置,适用于数据工具服务端,其特征在于,XML文件中的节点包括单节点和/或循环层级节点,所述读取装置包括:
定义单元,用于定义所述单节点的第一节点名称;
配置单元,用于根据所述第一节点名称配置所述单节点的绝对路径的第一xpath表达式;
所述定义单元还用于:定义所述循环层级节点的第二节点名称;
所述配置单元还用于:根据所述第二节点名称配置所述循环层级节点的相对路径的第二xpath表达式;
构建单元,用于根据所述第一节点名称与所述第一xpath表达式,和/或所述第二节点名称与所述第二xpath表达式构建树形节点结构;
获取单元,用于在接收到数据工具客户端根据读取指令的访问请求时,获取数据库表中对应的SQL查询式;
确定单元,用于确定所述SQL查询式对应的XML文件对象;
提取单元,用于通过消息转化接口提取所述XML文件对象中的节点值;
生成单元,用于根据所述树形节点结构中的节点名称与所述节点值生成map集合;
转化单元,用于将所述map集合转化为XML格式数据或json格式数据,并将所述XML格式数据或json格式数据发送至所述数据工具客户端;
还包括:
查询单元,用于根据所述SQL查询式执行查询操作,以获取所述读取指令对应的存储路径字段;
所述获取单元还用于:根据所述存储路径获取所述XML文件,并将所述XML文件封装为所述文件对象;
还包括:
调用单元,用于调用所述数据库表中与所述SQL查询式对应的树形节点结构,以查询xpath表达式集合与节点名称;
所述调用单元还用于:根据所述文件对象与所述xpath表达式集合调用消息转化接口;
所述转化单元还用于:通过所述消息转化接口将所述文件对象转化为XML字符串;
所述读取装置还包括:
抽取单元,用于通过所述消息转化接口采用jdom根据所述xpath表达式集合抽取所述XML字符串中的所述节点值。
13.根据权利要求12所述的XML数据的读取装置,其特征在于,
所述确定单元还用于:根据所述树形节点结构确定所述节点名称与所述节点值的映射关系;
所述生成单元还用于:根据所述映射关系生成所述map集合。
14.根据权利要求12或13所述的XML数据的读取装置,其特征在于,
所述转化单元还用于:根据递归方式将所述map集合转化为XML格式数据或json格式数据。
15.一种计算机设备,其特征在于,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至7中任一项所述方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810008245.7A CN110110150B (zh) | 2018-01-04 | 2018-01-04 | Xml数据的读取方法、读取装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810008245.7A CN110110150B (zh) | 2018-01-04 | 2018-01-04 | Xml数据的读取方法、读取装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110110150A CN110110150A (zh) | 2019-08-09 |
CN110110150B true CN110110150B (zh) | 2023-07-07 |
Family
ID=67483013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810008245.7A Active CN110110150B (zh) | 2018-01-04 | 2018-01-04 | Xml数据的读取方法、读取装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110110150B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328678B (zh) * | 2020-09-29 | 2021-08-20 | 深圳开源互联网安全技术有限公司 | 文档数据的处理方法、装置、电子设备及存储介质 |
US11693852B1 (en) * | 2021-04-12 | 2023-07-04 | Amdocs Development Limited | System, method, and computer program for normalizing a JSON structure |
CN116108235B (zh) * | 2023-02-20 | 2023-11-10 | 上海安博通信息科技有限公司 | 一种树形结构的路径获取方法、装置以及处理设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1560763A (zh) * | 2004-02-19 | 2005-01-05 | 北京大学 | 一种可扩展标记语言路径查询翻译为结构查询的方法 |
CN101763423A (zh) * | 2010-01-21 | 2010-06-30 | 中兴通讯股份有限公司 | 实现万维网页面树形结构数据展示的方法、系统及装置 |
CN103902565A (zh) * | 2012-12-26 | 2014-07-02 | 阿里巴巴集团控股有限公司 | 一种数据访问关系的确定方法及装置 |
CN105404665A (zh) * | 2015-11-12 | 2016-03-16 | 南威软件股份有限公司 | 一种json格式数据的查询管理系统 |
CN105554133A (zh) * | 2015-12-21 | 2016-05-04 | 世纪龙信息网络有限责任公司 | Http远程数据访问系统和方法 |
-
2018
- 2018-01-04 CN CN201810008245.7A patent/CN110110150B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1560763A (zh) * | 2004-02-19 | 2005-01-05 | 北京大学 | 一种可扩展标记语言路径查询翻译为结构查询的方法 |
CN101763423A (zh) * | 2010-01-21 | 2010-06-30 | 中兴通讯股份有限公司 | 实现万维网页面树形结构数据展示的方法、系统及装置 |
CN103902565A (zh) * | 2012-12-26 | 2014-07-02 | 阿里巴巴集团控股有限公司 | 一种数据访问关系的确定方法及装置 |
CN105404665A (zh) * | 2015-11-12 | 2016-03-16 | 南威软件股份有限公司 | 一种json格式数据的查询管理系统 |
CN105554133A (zh) * | 2015-12-21 | 2016-05-04 | 世纪龙信息网络有限责任公司 | Http远程数据访问系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110110150A (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105760534B (zh) | 自定义的可序列化的数据结构、hadoop集群、服务器及其应用方法 | |
KR102317535B1 (ko) | 소프트웨어 개발 키트로 데이터 추적을 구현하는 방법 및 시스템 | |
US7908594B2 (en) | External programmatic interface for IOS CLI compliant routers | |
US8200505B2 (en) | System and method for creating and rendering DICOM structured clinical reporting via the internet | |
US7784036B2 (en) | Methods and systems for transforming a parse graph into an and/or command tree | |
US7698694B2 (en) | Methods and systems for transforming an AND/OR command tree into a command data model | |
US7779398B2 (en) | Methods and systems for extracting information from computer code | |
US7559052B2 (en) | Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications | |
CN110059282A (zh) | 一种交互类数据的获取方法及系统 | |
Merle et al. | A precise metamodel for open cloud computing interface | |
CN110110150B (zh) | Xml数据的读取方法、读取装置、计算机设备和存储介质 | |
US20220058032A1 (en) | Generation apparatus, program, and generation method | |
CN109815242B (zh) | 一种数据处理方法及系统 | |
KR20120011583A (ko) | 통합의료정보 시스템의 전자서식 생성 시스템 및 관리 방법 | |
CN111159215B (zh) | Java类与关系型数据库的映射方法、装置及计算设备 | |
EP2521043A1 (en) | Method for establishing a relationship between semantic data and the running of a widget | |
US20150066536A1 (en) | Method and apparatus for generating health quality metrics | |
Wimmer et al. | Reusing model transformations across heterogeneous metamodels | |
CN113608955B (zh) | 一种日志记录方法、装置、设备及存储介质 | |
Willink | Modeling the OCL standard library | |
CN103559296A (zh) | 一种基于xml的scpi命令解析方法 | |
CN111078213A (zh) | 一种代码生成方法及代码生成装置 | |
WO2024036085A1 (en) | Code generator for clinical research study systems | |
CN113127776A (zh) | 面包屑路径生成方法、装置及终端设备 | |
Noyrit et al. | FacadeMetamodel: masking UML |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PP01 | Preservation of patent right | ||
PP01 | Preservation of patent right |
Effective date of registration: 20240202 Granted publication date: 20230707 |