发送、接收以及传输xml报文的方法和系统的制作方法

文档序号:6522655阅读:2022来源:国知局
发送、接收以及传输xml报文的方法和系统的制作方法
【专利摘要】本发明涉及发送、接收以及传输XML报文的方法和系统,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,所述方法至少包括:配置所述第一业务处理对象中的对象属性与用于产生XML报文的文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文。本发明提供的方法和系统使用存储业务处理对象和文档对象之间的对应关系的配置文件生成或解析XML报文,避免生成或者解析新的XML报文均需要修改代码的问题,实现报文的灵活配置,减少系统维护成本。
【专利说明】发送、接收以及传输XML报文的方法和系统
【技术领域】
[0001]本发明涉及发送、接收以及传输XML (可扩展标记语言)报文的方法和系统,所述XML报文用于存储业务数据。
【背景技术】
[0002]随着计算机技术的发展,面向对象编程逐渐成为主流的软件开发方法。面向对象编程的核心是“对象”,通常来说,对象是利用面向对象编程语言对客观事物的抽象表示。Java语言、C#语言、C++语言等均是面向对象编程语言。随着面向对象编程的发展,开发商逐渐倾向于使用面向对象编程语言来开发新的系统。
[0003]在基于面向对象编程语言的系统中,可以将业务数据抽象地表示为业务处理对象,将业务数据存储在业务处理对象中,并使用业务处理对象进行业务处理,所述业务数据可以是账户信息、交易信息等。
[0004]XML报文是一种用XML语言编写的文档,可以将业务数据存储在XML报文中以便进行业务数据的传输。在生成XML报文时,首先根据业务数据生成与该业务数据相对应的业务处理对象,然后根据业务处理对象生成文档对象,最后根据文档对象生成XML报文。系统在解析XML报文时,反向进行上述操作。在现有技术中,生成或者解析新的XML报文均需要修改代码,以便使业务处理对象和文档对象相对应,这增加了系统维护的成本,甚至在修改代码后还需要重启系统,这样可能会给系统使用者造成损失。

【发明内容】

[0005]为了解决上述问题,本发明提供了一种发送XML报文的方法,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,所述方法包括依次执行如下步骤:
[0006]步骤101:根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性;
[0007]步骤102:生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点;
[0008]步骤103:配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;
[0009]步骤104:根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;
[0010]步骤105:根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文。
[0011]优选地,所述对应关系为第一业务处理对象的对象属性的名称与相应的子节点的名称组成的至少一个关系对。
[0012]优选地,所述步骤104具体包括依次执行如下步骤:
[0013]步骤201:从所述第一业务处理对象中读取一个对象属性;[0014]步骤202:从所述配置文件中查找出与所读取的对象属性在名称上相对应的子节点,并且将查找出的子节点的值赋值为所读取的对象属性的值;
[0015]步骤203:对所述第一业务处理对象中所有对象属性均执行上述步骤201和步骤202。
[0016]为了解决上述技术问题,本发明还提供了一种接收XML报文的方法,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,所述方法包括依次执行如下步骤:
[0017]步骤301:获取配置文件,所述配置文件中存储有第一业务处理对象的对象属性与文档对象中的子节点之间的对应关系,所述文档对象用于产生XML报文,所述文档对象包括一个根节点和至少一个子节点;
[0018]步骤302:将接收到的XML报文还原成与所述XML报文对应的文档对象;
[0019]步骤303:生成用于进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
[0020]优选地,步骤303中所述根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中的操作具体包括依次执行如下步骤:
[0021]步骤401:从所述文档对象中读取一个子节点;
[0022]步骤402:从所述配置文件中查找出与所读取的子节点在名称上相对应的对象属性,并且将所述第二业务处理对象中相应的对象属性的值赋值为所读取的子节点的值;
[0023]步骤403:对所述文档对象中所有子节点均执行上述步骤401和步骤402。
[0024]为了解决上述技术问题,本发明还提供了一种传输XML报文的方法,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,所述方法包括依次执行如下步骤:
[0025](a)发送过程:
[0026]步骤101:根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性;
[0027]步骤102:生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点;
[0028]步骤103:配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;
[0029]步骤104:根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;
[0030]步骤105:根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文;
[0031](b)接收过程:
[0032]步骤106:获取所述配置文件;
[0033]步骤107:将接收到的XML报文还原成与所述XML报文对应的文档对象;
[0034]步骤108:生成用于进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
[0035]为了解决上述技术问题,本发明还提供了一种发送XML报文的系统,包括发送端,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,所述发送端用于:
[0036]根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性;
[0037]生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点;
[0038]配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;
[0039]根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;
[0040]根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文。
[0041]为了解决上述技术问题,本发明还提供了一种接收XML报文的系统,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,所述包括接收端,所述接收端用于:
[0042]获取配置文件,所述配置文件中存储有第一业务处理对象的对象属性与文档对象中的子节点之间的对应关系,所述文档对象用于产生XML报文,所述文档对象包括一个根节点和至少一个子节点;
[0043]将接收到的XML报文还原成与所述XML报文对应的文档对象;
[0044]生成用于所述接收端进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
[0045]本发明提供的方法和系统可以使用记录业务处理对象和文档对象之间的对应关系的配置文件生成或解析XML报文,避免生成或者解析新的XML报文均需要修改代码的问题,减少维护造成的停机。
【专利附图】

【附图说明】
[0046]图1是本发明实施例一的发送XML报文的方法的流程图;
[0047]图2示出了图1中步骤104的具体操作的流程图;
[0048]图3是本发明实施例二的接收XML报文的方法的流程图;
[0049]图4示出了图3中转存文档对象中的业务数据的操作的流程图;
[0050]图5是本发明实施例三的传输XML报文的方法的流程图。
【具体实施方式】
[0051]下面结合附图和具体实施例对本发明作进一步详细描述,但不作为对本发明的限定。
[0052]图1是本发明实施例一的发送XML报文的方法的流程图。本实施例阐述的方法可以将诸如账户信息和交易信息之类的业务数据存储到XML报文中,并且在发送端和接收端之间传输XML报文以便传输业务数据,业务数据可以包括至少一个数据项,其中交易信息中的交易金额、交易类型和交易时间等信息中每项信息均可以作为一个数据项,发送端和接收端可以是通过网络连接的两台计算机,如图1所示,所述方法包括依次执行如下步骤:
[0053]步骤101:根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性;
[0054]其中,业务处理对象可以是Java对象,所述系统的其他模块可以利用所述业务处理对象进行相应的业务处理。
[0055]步骤102:生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点;
[0056]步骤103:配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;
[0057]其中,对应关系对可以是第一业务处理对象的对象属性的名称与相应的子节点的名称组成的至少一个关系对,配置文件可以是XML格式或者是Properties格式的文档。
[0058]步骤104:根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;具体操作详见下文中的步骤201至步骤203。
[0059]步骤105:根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文;
[0060]其中,文档对象与XML报文之间的相互转换方法包括但不限于:对象关系模型(DOM)方法、用于Java的对象关系模型(JDOM)方法、以及针对XML的简单应用程序接口(SAX)0
[0061]上述操作利用配置文件建立了文档对象与业务处理对象之间的对应关系,配置文件与代码分离,可以根据需要更改配置文件。
[0062]图2示出了图1中步骤104的具体操作的流程图,如图2所示,步骤104具体包括依次执行如下步骤:
[0063]步骤201:从所述第一业务处理对象中读取一个对象属性;
[0064]步骤202:从所述配置文件中查找出与所读取的对象属性在名称上相对应的子节点,并且将查找出的子节点的值赋值为所读取的对象属性的值;
[0065]步骤203:对所述第一业务处理对象中所有对象属性均执行上述步骤201和步骤202。
[0066]上述步骤201至步骤203可以在文档对象中仅仅配置业务处理对象中的一部分对象属性,从而间接配置XML报文中存储的业务数据的数据项。
[0067]图3是本发明实施例二的接收XML报文的方法的流程图,示出了解析XML报文的操作,如图3所示,解析XML报文的操作包括如下步骤:
[0068]步骤301:获取配置文件,所述配置文件中存储有第一业务处理对象的对象属性与文档对象中的子节点之间的对应关系,所述文档对象用于产生XML报文,所述文档对象包括一个根节点和至少一个子节点;
[0069]其中,接收端可以通过网络传输从发送端获取配置文件,另外,接收端和发送端可以使用不同的配置文件。
[0070]步骤302:将接收到的XML报文还原成与所述XML报文对应的文档对象;
[0071]步骤303:生成用于进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应;
[0072]其中,步骤303中所述根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中的操作详见下文中的步骤401至步骤403。
[0073]图4示出了图3中转存文档对象中的业务数据的操作的流程图,如图4所示,所述操作包括依次执行如下步骤:
[0074]步骤401:从所述文档对象中读取一个子节点;
[0075]步骤402:从所述配置文件中查找出与所读取的子节点在名称上相对应的对象属性,并且将所述第二业务处理对象中相应的对象属性的值赋值为所读取的子节点的值;
[0076]步骤403:对所述文档对象中所有子节点均执行上述步骤401和步骤402。
[0077]图5是本发明实施例三的传输XML报文的方法的流程图,如图5所示,所述方法包括依次执行如下步骤:
[0078]步骤101:根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性;
[0079]步骤102:生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点;
[0080]步骤103:配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;
[0081]步骤104:根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;
[0082]步骤105:根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文;
[0083]步骤106:获取所述配置文件;
[0084]步骤107:将接收到的XML报文还原成与所述XML报文对应的文档对象;
[0085]步骤108:生成用于进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
[0086]本发明实施例四提供了发送XML报文的系统,所述系统包括发送端,其用于:
[0087]根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性;
[0088]生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点;
[0089]配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中;
[0090]根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中;
[0091]根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文。
[0092]本发明实施例五提供了接收XML报文的系统,所述系统包括接收端,其用于:
[0093]获取配置文件,所述配置文件中存储有第一业务处理对象的对象属性与文档对象中的子节点之间的对应关系,所述文档对象用于产生XML报文,所述文档对象包括一个根节点和至少一个子节点;
[0094]将接收到的XML报文还原成与所述XML报文对应的文档对象;
[0095]生成用于所述接收端进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
[0096]综上所述,本发明提供的方法和系统利用了配置文件建立了文档对象和业务处理对象之间的对应关系,所提供的方法和系统可以根据按照需要修改好的配置文件生成XML文档或者解析出业务处理对象,实现了代码与配置文件的分离,避免生成或者解析新的XML报文均需要修改代码的问题,减少维护造成的停机。
[0097]以上实施例仅为本发明的示例性实施例,不用于限制本发明,本发明的保护范围由权利要求书限定。本领域技术人员可以在本发明的实质和保护范围内,对本发明做出各种修改或等同替换,这种修改或等同替换也应视为落在本发明的保护范围内。
【权利要求】
1.一种发送XML报文的方法,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,其特征在于,所述方法包括依次执行如下步骤: 步骤101:根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性; 步骤102:生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点; 步骤103:配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中; 步骤104:根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中; 步骤105:根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文。
2.根据权利要求1所述的发送XML报文的方法,其特征在于,所述对应关系为第一业务处理对象的对象属性的名称与相应的子节点的名称组成的至少一个关系对。
3.根据权利要求2所 述的发送XML报文的方法,其特征在于,所述步骤104具体包括依次执行如下步骤: 步骤201:从所述第一业务处理对象中读取一个对象属性; 步骤202:从所述配置文件中查找出与所读取的对象属性在名称上相对应的子节点,并且将查找出的子节点的值赋值为所读取的对象属性的值; 步骤203:对所述第一业务处理对象中所有对象属性均执行上述步骤201和步骤202。
4.一种接收XML报文的方法,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,其特征在于,所述方法包括依次执行如下步骤: 步骤301:获取配置文件,所述配置文件中存储有第一业务处理对象的对象属性与文档对象中的子节点之间的对应关系,所述文档对象用于产生XML报文,所述文档对象包括一个根节点和至少一个子节点; 步骤302:将接收到的XML报文还原成与所述XML报文对应的文档对象; 步骤303:生成用于进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
5.根据权利要求4所述的接收XML报文的方法,其特征在于,所述对应关系为第一业务处理对象的对象属性的名称与相应的子节点的名称组成的至少一个关系对。
6.根据权利要求5所述的接收XML报文的方法,其特征在于,步骤303中所述根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中的操作具体包括依次执行如下步骤: 步骤401:从所述文档对象中读取一个子节点; 步骤402:从所述配置文件中查找出与所读取的子节点在名称上相对应的对象属性,并且将所述第二业务处理对象中相应的对象属性的值赋值为所读取的子节点的值; 步骤403:对所述文档对象中所有子节点均执行上述步骤401和步骤402。
7.一种传输XML报文的方法,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,其特征在于,所述方法包括依次执行如下步骤:(a)发送过程: 步骤101:根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性; 步骤102:生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节点; 步骤103:配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中; 步骤104:根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中; 步骤105:根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文; (b)接收过程: 步骤106:获取所述配置文件; 步骤107:将接收到的XML报文还原成与所述XML报文对应的文档对象; 步骤108:生成用于进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一 文档对象中的一个对象属性相对应。
8.一种发送XML报文的系统,包括发送端,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,其特征在于,所述发送端用于: 根据所述业务数据生成用于存储所述业务数据的第一业务处理对象,所生成的第一业务处理对象包括与每个所述数据项对应的对象属性; 生成用于产生XML报文的文档对象,所述文档对象包括一个根节点和至少一个子节占.配置所述第一业务处理对象中的对象属性与所述文档对象中的子节点之间的对应关系,并将所配置的对应关系存储在配置文件中; 根据所述配置文件将所述第一业务处理对象中存储的业务数据转存到所述文档对象中; 根据转存有业务数据的文档对象生成XML报文,并发送所生成的XML报文。
9.一种接收XML报文的系统,所述XML报文用于存储业务数据,所述业务数据包括至少一个数据项,其特征在于,所述包括接收端,所述接收端用于: 获取配置文件,所述配置文件中存储有第一业务处理对象的对象属性与文档对象中的子节点之间的对应关系,所述文档对象用于产生XML报文,所述文档对象包括一个根节点和至少一个子节点; 将接收到的XML报文还原成与所述XML报文对应的文档对象; 生成用于所述接收端进行业务处理的第二业务处理对象,并且根据所述配置文件将所述文档对象中的业务数据转存到所述第二业务处理对象中,其中第二业务处理对象中的每个对象属性均与所述第一文档对象中的一个对象属性相对应。
【文档编号】G06F17/22GK103646015SQ201310656839
【公开日】2014年3月19日 申请日期:2013年12月6日 优先权日:2013年12月6日
【发明者】乔晓阳, 庚福宝 申请人:中国银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1