一种单点登录系统及其个性化数据引入方法和装置转让专利

申请号 : CN200910109097.9

文献号 : CN101650733B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任峰

申请人 : 金蝶软件(中国)有限公司

摘要 :

本发明适用于数据处理领域,提供了一种单点登录系统及其个性化数据引入方法和装置,所述方法包括下述步骤:接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器;采用配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据;通过配置个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,引入XML数据文件。在本发明实施例中,通过预设多种个性化数据解析器,并选择对应的个性化数据解析器对待引入的XML数据文件进行解析,从而可以快速、高效、准确的实现个性化数据的引入。

权利要求 :

1.一种个性化数据引入方法,其特征在于,所述方法包括下述步骤:预设统一的数据解析器扩展接口,根据所述数据解析器扩展接口扩展个性化数据解析器,并保存扩展的个性化数据解析器;

接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器;

采用配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据;

通过配置的个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,引入XML数据文件;

所述数据解析器扩展接口包括:

抽象类方法,所述抽象类方法包括用于读取XML数据文件的XML数据文件读取方法和用于根据XML数据文件的树形节点构造实体对象的实体对象构造方法;

接口方法,所述接口方法包括数据文件读取前处理方法、数据文件读取后处理方法、将实体对象信息写入XML数据文件的方法和数据同步处理方法。

2.如权利要求1所述的方法,其特征在于,在所述接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器的步骤之前,所述方法还包括下述步骤:预先设置一种或者多种用于对不同的XML数据文件进行解析的个性化数据解析器。

3.如权利要求1所述的方法,其特征在于,所述根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器的步骤具体为:在接收到用户发送的数据引入指令时,从预设的多种个性化数据解析器中选择一种可用于解析所述待引入的XML数据文件的个性化数据解析器,并将所述个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器。

4.如权利要求1所述的方法,其特征在于,所述接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器的步骤具体为:在接收到用户发送的数据引入指令时,输出预设的个性化数据解析器,并在接收到用户选择的个性化数据解析器时,将用户选择的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器。

5.如权利要求1所述的方法,其特征在于,所述方法还包括下述步骤:当发生数据引入异常时,向用户提示数据引入发生异常,并输出异常发生的原因。

6.一种个性化数据引入装置,其特征在于,所述装置包括:资源解析器,用于接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器;

数据解析器,用于采用所述资源解析器配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据;

集成控制器,用于控制所述资源解析器配置的个性化数据解析器对所述数据解析器解析得到的目标数据进行业务逻辑迭代,引入XML数据文件;

数据解析器扩展接口,用于定义统一的用于进行个性化数据解析器扩展的接口;

数据解析器扩展单元,用于根据所述数据解析器扩展接口扩展个性化数据解析器,并保存扩展的个性化数据解析器;

所述数据解析器扩展接口包括:

针对XML数据文件的具体处理控制器,用于读取XML数据文件以及根据XML数据文件的树形节点构造实体对象;

针对引入逻辑的控制器,用于数据文件读取前的处理、数据文件读取后的处理、将实体对象信息写入XML数据文件以及数据的同步处理。

7.如权利要求6所述的装置,其特征在于,所述装置还包括:异常输出单元,用于在发生数据引入异常时,向用户提示数据引入发生异常,并输出异常发生的原因。

8.一种单点登录系统,其特征在于,所述系统包括权利要求6或7所述的个性化数据引入装置。

说明书 :

一种单点登录系统及其个性化数据引入方法和装置

技术领域

[0001] 本发明属于数据处理领域,尤其涉及一种单点登录系统及其个性化数据引入方法和装置。

背景技术

[0002] 为了实现单点登录,一般需要将多个业务系统进行集成处理。在将多个业务系统进行集成处理时,由于各个业务系统间的数据库管理系统(Data Base Management System,DMBS)、网络协议等存在差异,使得在集成各个业务系统的数据时,需要依赖于各个业务系统的DMBS异构和网络协议异构才能实现各个业务系统之间进行数据的引入和引出,导致数据的引入和引出过程难度大、复杂度高。
[0003] 为例避免上述问题,现有技术提供了一种采用XML数据文件实现多个业务系统之间的数据存储和传递,以在多个业务系统之间进行数据的引入和引出,其过程简述如下:从参考数据源中引出数据,并将从参考数据源中引出的数据存储为XML数据文件,再将该XML数据文件引入目标数据源,以实现参考数据源与目标数据源之间的数据的存储和传递。这种数据引入引出方法屏蔽了参考数据源与目标数据源之间DMBS的异构和网络协议的异构,使得在多个数据源之间进行数据引入和引出变得的非常容易、便捷。 [0004] 但由于各个业务系统在进行数据引入和引出时,所使用的XML数据文件可能存在诸多差异,如XML数据文件的格式或者解析方式均有可能存在较多差异,此时要将从一个业务系统中引出的XML数据文件引入另一个业务系统,则引入该XML数据文件的业务系统无法正确解析该XML数据文件,难以保证引入和引出数据的准确性和稳定性。 [0005] 现有技术一般人为的将引出数据内容手工插入、修改,以引入存在差异的XML数据文件,虽然也能基本满足业务应用的需要,但这种数据的引入和引出方法由于采用人工进行数据的引入和引出,难以完全保证引入和引出数据的准确性,且需要付出巨大的人力成本,难以满足系统集成的需求。

发明内容

[0006] 本发明实施例的目的在于提供一种个性化数据引入方法,旨在解决现有的数据引入方法在引入个性化数据时存在的成本高、准确性低的问题。
[0007] 本发明实施例是这样实现的,一种个性化数据引入方法,所述方法包括下述步骤:
[0008] 预设统一的数据解析器扩展接口,根据所述数据解析器扩展接口扩展个性化数据解析器,并保存扩展的个性化数据解析器;
[0009] 接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器;
[0010] 采用配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据;
[0011] 通过配置的个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,引入XML数据文件;
[0012] 所述数据解析器扩展接口包括:
[0013] 抽象类方法,所述抽象类方法包括用于读取XML数据文件的XML数据文件读取方法和用于根据XML数据文件的树形节点构造实体对象的实体对象构造方法; [0014] 接口方法,所述接口方法包括数据文件读取前处理方法、数据文件读取后处理方法、将实体对象信息写入XML数据文件的方法和数据同步处理方法。
[0015] 本发明实施例的另一目的在于提供一种个性化数据引入装置,所述装置包括: [0016] 资源解析器,用于接收用户发送的数据引入指令,并根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器;
[0017] 数据解析器,用于采用所述资源解析器配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据;
[0018] 集成控制器,用于控制所述资源解析器配置的个性化数据解析器对所述数据解析器解析得到的目标数据进行业务逻辑迭代,引入XML数据文件;
[0019] 数据解析器扩展接口,用于定义统一的用于进行个性化数据解析器扩展的接口; [0020] 数据解析器扩展单元,用于根据所述数据解析器扩展接口扩展个性化数据解析器,并保存扩展的个性化数据解析器;
[0021] 所述数据解析器扩展接口包括:
[0022] 针对XML数据文件的具体处理控制器,用于读取XML数据文件以及根据XML数据文件的树形节点构造实体对象;
[0023] 针对引入逻辑的控制器,用于数据文件读取前的处理、数据文件读取后的处理、将实体对象信息写入XML数据文件以及数据的同步处理。
[0024] 本发明实施例的另一目的在于提供一种单点登录系统,所述系统包括所述个性化数据引入装置。
[0025] 在本发明实施例中,在接收到用户发送的数据引入指令时,资源解析器获取预设的与待引入的XML数据文件对应的个性化数据解析器,通过该个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据,集成控制器控制个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,从而可以快速、高效、准确的实现个性化数据的引入。 附图说明
[0026] 图1是本发明实施例提供的个性化数据引入方法的实现流程图; [0027] 图2是本发明实施例提供的资源解析器配置个性化数据解析器的页面示意 图; [0028] 图3是本发明实施例提供的个性化数据引入装置的结构框图。

具体实施方式

[0029] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0030] 在本发明实施例中,在接收到用户发送的数据引入指令时,资源解析器获取预设的与待引入的XML数据文件对应的个性化数据解析器,通过该个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据,集成控制器控制个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,实现XML数据文件的引入。
[0031] 图1示出了本发明实施例提供的个性化数据引入方法的实现流程,详述如下: [0032] 在步骤S101中,接收用户发送的数据引入指令,并根据该数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器。其中个性化数据解析器是指根据某种类型XML数据文件的数据字典编写的用于解析对应类型的XML数据文件的数据解析器实例化类。
[0033] 在本发明实施例中,根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器的步骤具体如下:
[0034] 根据待引入的XML数据文件的结构,从预设的多个个性化数据解析器中选择一种可用于解析该待引入的XML数据文件的个性化数据解析器,并将该个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器。具体实现时,根据该数据引入指令,可以采用现有的任意一种方法从预设的多个个性化数据解析器中选择一种可用于解析该待引入的XML数据文件的个性化数据解析器,在此不再赘述。
[0035] 在本发明另一实施例中,根据所述数据引入指令配置用于解析待引入的XML数据文件的个性化数据解析器的步骤还可以如下:
[0036] 输出预设的个性化数据解析器,以供用户选择,当用户从输出的个性化数据解析器中选择其中一种个性化数据解析器时,资源解析器将用户选择的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器。
[0037] 请参阅图2,为本发明实施例提供的通过资源解析器配置个性化数据解析器的页面示意图,该图中“引入实现”项对应的就是个性化数据解析器,用户通过图2所示的页面不仅可以配置个性化数据解析器,还可以配置此次数据引入的其他参数。 [0038] 在本发明实施例中,在用户选择了待引入的XML数据文件后,将待引入的XML数据文件“流”化,并上传至服务端。
[0039] 在本发明另一实施例中,该方法还包括下述步骤:
[0040] 预先设置一种或者多种用于对不同的XML数据文件进行解析的个性化数据解析器。
[0041] 在本发明实施例中,根据引出的各种XML数据文件的数据字典编写对应的个性化数据解析器,并将编写的多种个性化数据解析器预设于单点登录系统中,即预设的多种个性化数据解析器可以对不同的XML数据文件进行解析。
[0042] 在步骤S102中,采用配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据。其中个性化数据解析器对待引入的XML数据文件进行解析的过程具体如下:
[0043] 个性化数据解析器对XML数据文件进行解析,获取目标数据和目标数据属性。 [0044] 在本发明实施例中,当将用户选择的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器,或者将自动根据待引入的XML数据文件得到的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器时,由于用户对个性化数据解析器或者XML数据文件的结构 不熟悉,或者在自动得到个性化数据解析器的过程中出现错误,则可能导致配置的个性化数据解析器不能解析待引入的XML数据文件,此时,在采用配置的个性化数据解析器对待引入的XML数据文件进行解析时,则可能导致数据引入异常,影响各个业务系统的数据的完整性和准确性,为了使用户及时获知该信息,在本发明另一实施例中,该方法还包括下述步骤:
[0045] 当发生数据引入异常时,向用户提示数据引入发生异常,并输出异常发生的原因。
[0046] 在步骤S103中,通过个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,引入XML数据文件。其中通过个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,引入XML数据文件的具体过程是根据引入该XML数据文件的业务系统的业务逻辑进行的,对于具有不同业务逻辑的业务系统,其过程可能不相同,由于其具体的实现过程属于现有技术,在此不再赘述。
[0047] 在本发明实施例中,先获取数据源相关信息和数据过滤条件,建立与数据源之间的连接,并根据数据过滤条件,通过个性化数据解析器的接口将个性化数据解析器解析得到的目标数据写入数据源中。其中数据源是指将要引入该待引入的XML数据文件的数据源。
[0048] 为了使用户可以根据自身的需求,对个性化数据引入进行扩展,在本发明另一实施例中,该方法还包括下述步骤:
[0049] 预设统一的数据解析器扩展接口,根据预设的数据解析器扩展接口扩展个性化数据解析器,并保存扩展的个性化数据解析器。
[0050] 其中预设的数据解析器扩展接口包括但不限于抽象类方法(AbstractXML)和接口方法(IXmlIO)。其中抽象类方法是针对XML数据文件的具体处理控制器,其包括但不限于XML数据文件读取方法(readXML)、实体对象构造方法(buildInfo)。其中XML数据文件读取方法用于读取XML数据文件,实体对象构造方法用于根据XML数据文件的树形节点构造实体对象。接口方法是针对引入逻辑的控制器,其包括但不限于数据文件读取前处理方法(before xml)、数据文件读取后处理方法(after xml)、将实体对象信息写入XML数据文件的方法(inputXML)以及数据同步处理方法(sync xml)。在集成控制器处理完业务逻辑后需要将一些重要信息同步回XML数据文件时,可以采用数据同步处理方法来实现。当用户根据预设的数据解析器扩展接口扩展了个性化数据解析器时,则在接收到数据引入指令时,如果该扩展的个性化数据解析器可以解析待引入的XML数据文件,则采用扩展的个性化数据解析器对待引入的XML数据文件进行解析。图3示出了本发明实施例提供的个性化数据引入装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分。该个性化数据引入装置可以是内置于单点登录系统中的软件单元、硬件单元或者软硬件相结合的单元,或者作为独立的挂件集成到单点登录系统或者单点登录系统的应用系统中。其中: [0051] 资源解析器31接收用户发送的数据引入指令,并根据该数据引入指令配置预设的用于解析待引入的XML数据文件的个性化数据解析器。
[0052] 在本发明实施例中,预先根据引出的各种XML数据文件的数据字典编写对应的个性化数据解析器,并将编写的多种个性化数据解析器预设于单点登录系统中,即预设的多种个性化数据解析器可以对不同结构的XML数据文件进行解析。
[0053] 在本发明实施例中,资源解析器31在接收到用户发送的数据引入指令时,根据待引入的XML数据文件的结构,从预设的多个个性化数据解析器中选择一种可用于解析该待引入的XML数据文件的个性化数据解析器,并将该个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器。具体实现时,根据该数据引入指令,可以采用现有的任意一种方法从预设的多个个性化数据解析器中选择一种可用于解析该待引入的XML数据文件的个性化数据解析器,在此不再赘述。
[0054] 在本发明另一实施例中,资源解析器31在接收到用户发送的数据引入指令时,输出预设的个性化数据解析器,以供用户选择,当用户从输出的个性化数 据解析器中选择其中一种个性化数据解析器时,资源解析器将用户选择的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器。
[0055] 数据解析器32采用资源配置器31配置的个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据。其中个性化数据解析器对待引入的XML数据文件进行解析的过程具体如下:
[0056] 集成控制器根据资源配置器配置的个性化数据解析器实例化数据解析器,并将“流”化后的待引入的XML数据文件传入个性化数据解析器,个性化数据解析器对传输的XML数据文件进行解析,获取目标数据和目标数据属性。
[0057] 在本发明实施例中,当资源解析器31将用户选择的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器,或者将资源解析器31自动根据待引入的XML数据文件得到的个性化数据解析器配置为用于解析待引入的XML数据文件的个性化数据解析器时,由于用户对个性化数据解析器或者XML数据文件的结构不熟悉,或者资源解析器在自动得到个性化数据解析器的过程中出现错误,则可能导致资源解析器配置的个性化数据解析器不能解析待引入的XML数据文件,此时,再采用资源配置器配置的个性化数据解析器对待引入的XML数据文件进行解析时,则可能导致数据引入异常,而影响各个业务系统的数据的完整性和准确性,为了使用户及时获知该信息,在本发明另一实施例中,该装置还包括异常输出单元33。该异常输出单元33在发生数据引入异常时,向用户提示数据引入发生异常,并输出异常发生的原因。
[0058] 集成控制器34控制资源解析器31配置的个性化资源解析器对数据解析器32解析得到的目标数据进行业务逻辑迭代,引入XML数据文件。其中集成控制器34控制资源解析器31配置的个性化资源解析器对数据解析器32解析得到的目标数据进行业务逻辑迭代,引入XML数据文件的具体过程是根据引入该XML数据文件的业务系统的业务逻辑进行的,对于具有不同业务逻辑的业务系统,其过程可能不相同,由于其具体的实现过程属于现有技术,在此不再赘述。
[0059] 为了使用户可以根据自身的需求,对个性化数据引入进行扩展,在本发明 另一实施例中,该装置还包括数据解析器扩展接口35和数据解析器扩展单元36。其中: [0060] 数据解析器扩展接口35定义统一的用于进行个性化数据解析器扩展的接口。该数据解析器扩展接口35包括但不限于抽象类方法(AbstractXML)和接口方法(IXmlIO)。其中抽象类方法包括但不限于XML数据文件读取方法(readXML)、实体对象构造方法(buildInfo)。其中XML数据文件读取方法用于读取XML数据文件,实体对象构造方法用于根据XML数据文件的树形节点构造实体对象。接口方法包括但不限于数据文件读取前处理方法(before xm1)、数据文件读取后处理方法(after xml)、将实体对象信息写入XML数据文件的方法(inputXML)以及数据同步处理方法(sync xml)。在集成控制器处理完业务逻辑后需要将一些重要信息同步回XML数据文件时,可以采用数据同步处理方法来实现。 [0061] 数据解析器扩展单元36根据数据解析器扩展接口35扩展个性化数据解析器,并保存扩展的个性化数据解析器。
[0062] 当数据解析器扩展单元36根据数据解析器扩展接口35扩展了个性化数据解析器时,则资源解析器31在接收到数据引入指令时,如果扩展的个性化数据解析器可以解析待引入的XML数据文件,则采用扩展的个性化数据解析器对待引入的XML数据文件进行解析。 [0063] 在本发明实施例中,在接收到用户发送的数据引入指令时,资源解析器获取预设的与待引入的XML数据文件对应的个性化数据解析器,通过该个性化数据解析器对待引入的XML数据文件进行解析,得到目标数据,集成控制器控制个性化数据解析器对解析得到的目标数据进行业务逻辑迭代,从而可以快速、高效、准确的实现个性化数据的引入。通过提供数据解析器扩展接口,从而使用户可以根据需要进行个性化引入开发、扩展和管理,简化了单点登录的实施过程。在发生数据引入异常时,及时的向用户提示数据引入发生异常,并输出异常发生的原因,从而使用户可以及时、快速的发现数据引入异常,并输 出的异常发生的原因,尽快对数据引入异常进行处理。
[0064] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。