CN103544154A - 一种数据格式转换的方法 - Google Patents
一种数据格式转换的方法 Download PDFInfo
- Publication number
- CN103544154A CN103544154A CN201210238072.0A CN201210238072A CN103544154A CN 103544154 A CN103544154 A CN 103544154A CN 201210238072 A CN201210238072 A CN 201210238072A CN 103544154 A CN103544154 A CN 103544154A
- Authority
- CN
- China
- Prior art keywords
- data
- business
- data format
- data model
- language
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种数据格式转换的方法,首先需要定义出业务数据模型,按照业务数据模型定义的方法进行手工配置定义或者通过服务治理平台进行业务数据模型的自动化配置定义;其次按照元语定义的语法规则,编写对业务数据模型中每一个节点的处理过程。接着,代码引擎在运行时会根据不同的业务,选择不同的业务模型调用代码引擎进行运算处理。上述技术方案实施时可以解决数据格式转换将技术框架和业务需求捆绑起来进行定制化的开发,造成业务和技术固化在一起的问题,基于元数据的数据格式转换技术提出一个高度扩展,高可维护的方案,而这个方法的实施最终可以将业务和技术实现相分离,便于今后应用的维护。
Description
技术领域
本发明涉及一种数据格式转换的技术,特别是指一种基于业务数据模型的元数据来自动生成数据格式转换实现程序的方法,这个方法主要用于解决系统集成过程中的数据格式转换类问题。
背景技术
传统的数据格式转换模式是将技术框架和业务需求捆绑起来进行定制化的开发,造成业务和技术固化在一起,这样技术人员不仅需要关注技术上的细节,还要关注业务上的细节,而业务人员同样需要掌握一定技术才能真正地进行业务定制开发和维护。
基于元数据的数据格式转换模式特点是实现业务和技术实现相分离,业务人员在分析定义服务和接口时,基于元数据定义出业务数据模型,技术人员根据业务人员定义的业务数据模型,实现在运行时动态生成数据格式转换的硬编码实现类。
采用本发明,使得数据格式转换实现业务和技术相分离,业务人员只需要定义业务数据模型,而技术人员只需要基于业务人员定义的业务数据模型实现数据的解析和映射。
发明内容
本发明所要解决的技术问题是通过编写自定义的元语,然后基于元语的编译器对输入的业务数据模型进行运算,生成一种通用数据格式转换的实现程序,这种方法既可以实现业务和技术的分离,又可以通过自定义的元语言,对各种各样的业务数据模型进行格式转换及其运算。
本发明所述的方法至少包括如下的步骤:
步骤1:定义业务数据模型
业务人员根据业务的数据协议规范,抽象出元数据和元结构,然后定义出描述该业务的数据模型,包括服务的数据模型和接口的数据模型,这样在做服务到接口或者接口到服务的数据格式转换时,作为数据格式转换技术实现的数据模型。
元数据是描述数据的数据,元数据是树状结构的,组成树的每一个节点我们称为元数据,树状结构我们称为元结构。
步骤2:定义元语:
元语是用来处理元结构树的形式化脚本语言,针对业务数据模型中每一个元结构点,按照元语定义的处理逻辑进行处理,例如:如果节点是叶子节点,则生成从文本中取值的源程序。
步骤3:定义元语编译器:
针对步骤2中定义的元语,要有对应的元语编译器,该编译器的输入是业务数据模型元结构中的结构点对象,而输出则是读取针对该节点所描述的数据的代码片段。
步骤4:生成数据格式转换实现:
针对一个完整的业务数据模型,代码引擎利用元语编译器迭代模型中的每一个元结构点,然后生成一个完整的数据格式转换程序代码,然后,编译并加载生成的数据格式转换程序,运行时调用编译之后的目标码完成数据格式转换的功能。
具体实施方式
上述方法的实施办法首先需要定义出业务数据模型,按照业务数据模型定义的方法进行手工配置定义或者通过服务治理平台进行业务数据模型的自动化配置定义;其次按照元语定义的语法规则,编写对业务数据模型中每一个节点的处理过程;这个过程是在前期进行服务定义或者业务分析的时候完成的。接着,代码引擎在运行时会根据不同的业务,选择不同的业务模型调用代码引擎进行运算处理,引擎的运算过程为:首先迭代业务模型对应的元结构树,针对每一个元结构点,将其作为元语编译器的输入并调用元语编译器,生成与该结构点相对应的代码片段,代码引擎会将这些代码片段进行整理,形成一个完成的程序源代码,然后对该源码进行编译并加载到内存,以供调用,整个运算过程只执行一次,除非业务数据模型被修改。
上述技术方案实施时可以解决数据格式转换将技术框架和业务需求捆绑起来进行定制化的开发,造成业务和技术固化在一起的问题,基于元数据的数据格式转换技术提出一个高度扩展,高可维护的方案,而这个方法的实施最终可以将业务和技术实现相分离,便于今后应用的维护。
最后所应说明的是,以上实施例仅用以说明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或者等同地替换;而一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。
Claims (1)
1.一种数据格式转换的方法,其特征在于:该方法至少包括如下的步骤:
步骤1:定义业务数据模型
业务人员根据业务的数据协议规范,抽象出元数据和元结构,然后定义出描述该业务的数据模型,包括服务的数据模型和接口的数据模型,这样在做服务到接口或者接口到服务的数据格式转换时,作为数据格式转换技术实现的数据模型。
元数据是描述数据的数据,元数据是树状结构的,组成树的每一个节点我们称为元数据,树状结构我们称为元结构。
步骤2:定义元语:
元语是用来处理元结构树的形式化脚本语言,针对业务数据模型中每一个元结构点,按照元语定义的处理逻辑进行处理,例如:如果节点是叶子节点,则生成从文本中取值的源程序。
步骤3:定义元语编译器:
针对步骤2中定义的元语,要有对应的元语编译器,该编译器的输入是业务数据模型元结构中的结构点对象,而输出则是读取针对该节点所描述的数据的代码片段。
步骤4:生成数据格式转换实现:
针对一个完整的业务数据模型,代码引擎利用元语编译器迭代模型中的每一个元结构点,然后生成一个完整的数据格式转换程序代码,然后,编译并加载生成的数据格式转换程序,运行时调用编译之后的目标码完成数据格式转换的功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210238072.0A CN103544154A (zh) | 2012-07-11 | 2012-07-11 | 一种数据格式转换的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210238072.0A CN103544154A (zh) | 2012-07-11 | 2012-07-11 | 一种数据格式转换的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103544154A true CN103544154A (zh) | 2014-01-29 |
Family
ID=49967619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210238072.0A Pending CN103544154A (zh) | 2012-07-11 | 2012-07-11 | 一种数据格式转换的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103544154A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461582A (zh) * | 2014-12-30 | 2015-03-25 | 乐视网信息技术(北京)股份有限公司 | 业务处理方法、装置以及设备 |
CN105161095A (zh) * | 2015-07-29 | 2015-12-16 | 百度在线网络技术(北京)有限公司 | 语音识别语法树的构图方法及装置 |
CN106681781A (zh) * | 2015-11-05 | 2017-05-17 | 腾讯科技(深圳)有限公司 | 实时计算业务的实现方法和系统 |
CN106708791A (zh) * | 2017-01-04 | 2017-05-24 | 竹间智能科技(上海)有限公司 | 数据格式转换方法及装置 |
CN107222461A (zh) * | 2017-05-04 | 2017-09-29 | 中国联合网络通信集团有限公司 | 通信处理方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1658181A (zh) * | 2004-02-20 | 2005-08-24 | 三星电子株式会社 | 转换装置及其方法 |
CN102236672A (zh) * | 2010-05-06 | 2011-11-09 | 深圳市腾讯计算机系统有限公司 | 一种数据导入方法及装置 |
-
2012
- 2012-07-11 CN CN201210238072.0A patent/CN103544154A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1658181A (zh) * | 2004-02-20 | 2005-08-24 | 三星电子株式会社 | 转换装置及其方法 |
CN102236672A (zh) * | 2010-05-06 | 2011-11-09 | 深圳市腾讯计算机系统有限公司 | 一种数据导入方法及装置 |
Non-Patent Citations (2)
Title |
---|
傅向华等: ""基于SOA的流程与数据关联模型研究"", 《计算机应用研究》 * |
秦善华等: ""基于数据元的数据模型语义描述"", 《大庆石油学院学报》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461582A (zh) * | 2014-12-30 | 2015-03-25 | 乐视网信息技术(北京)股份有限公司 | 业务处理方法、装置以及设备 |
CN105161095A (zh) * | 2015-07-29 | 2015-12-16 | 百度在线网络技术(北京)有限公司 | 语音识别语法树的构图方法及装置 |
CN105161095B (zh) * | 2015-07-29 | 2017-03-22 | 百度在线网络技术(北京)有限公司 | 语音识别语法树的构图方法及装置 |
CN106681781A (zh) * | 2015-11-05 | 2017-05-17 | 腾讯科技(深圳)有限公司 | 实时计算业务的实现方法和系统 |
CN106708791A (zh) * | 2017-01-04 | 2017-05-24 | 竹间智能科技(上海)有限公司 | 数据格式转换方法及装置 |
CN106708791B (zh) * | 2017-01-04 | 2020-03-17 | 竹间智能科技(上海)有限公司 | 数据格式转换方法及装置 |
CN107222461A (zh) * | 2017-05-04 | 2017-09-29 | 中国联合网络通信集团有限公司 | 通信处理方法和装置 |
CN107222461B (zh) * | 2017-05-04 | 2020-03-13 | 中国联合网络通信集团有限公司 | 通信处理方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104360859B (zh) | 一种可视化的服务开发方法和系统 | |
CN103544154A (zh) | 一种数据格式转换的方法 | |
CN103942086B (zh) | 基于aadl的创建、分析和仿真混成系统模型的方法 | |
CN109116828B (zh) | 一种控制器中模型代码配置方法和装置 | |
CN101859244A (zh) | 多工具链工程构建方法及系统 | |
CN103019686B (zh) | 一种跨两个中间件的系统及其编译方法 | |
CN103164206A (zh) | 基于saas的软件定制系统 | |
CN103049251A (zh) | 一种数据库持久层装置及数据库操作方法 | |
CN105867944A (zh) | Web前端数据操作层及其实现方法 | |
CN115878112A (zh) | 一种多方复杂商业协议智能合约生成系统及其生成方法 | |
Martinez et al. | Recovering sequence diagrams from object-oriented code: An ADM approach | |
Hei et al. | Automatic transformation from UML statechart to Petri nets for safety analysis and verification | |
CN101303646B (zh) | 基于可执行元语言的电信领域建模方法 | |
US10776704B2 (en) | Method and system for building domain intelligent solution | |
Wenger et al. | Transformation of IEC 61131-3 to IEC 61499 based on a model driven development approach | |
CN202143092U (zh) | 报文处理系统 | |
CN101894317A (zh) | 数据变化驱动业务逻辑的方法和系统 | |
Kuhn et al. | FAME, a polyglot library for metamodeling at runtime | |
Halchin et al. | B-PERFect: Applying the PERF Approach to B Based System Developments | |
JP2010049439A (ja) | ソフトウェアモデルを用いたシステム構築方法およびモデリング装置 | |
Sabraoui et al. | A MDA-based model-driven approach to generate GUI for mobile applications | |
CN102799462B (zh) | 基于Eclipse平台的脚本引擎装置及Eclipse平台的配置方法 | |
CN105204919B (zh) | 流程虚拟机 | |
Blouin et al. | Kaolin: A system-level AADL tool for FPGA design reuse, upgrade and migration | |
Cardoso et al. | A generative-oriented model-driven design environment for customizable video surveillance systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140129 |
|
WD01 | Invention patent application deemed withdrawn after publication |