CN104899225A - 对象关系映射方法、装置及处理器 - Google Patents
对象关系映射方法、装置及处理器 Download PDFInfo
- Publication number
- CN104899225A CN104899225A CN201410083314.2A CN201410083314A CN104899225A CN 104899225 A CN104899225 A CN 104899225A CN 201410083314 A CN201410083314 A CN 201410083314A CN 104899225 A CN104899225 A CN 104899225A
- Authority
- CN
- China
- Prior art keywords
- database table
- data
- relation
- current queries
- another name
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开一种对象关系映射方法、装置及处理器,该方法中,在需要查询数据库表中的数据时,根据接收到的数据库操作语句、查询参数,确定当前查询对应的数据库表的别名、数据库表的物理字段,并构建相应的表连接关系,根据接收到的对象操作数据和预设的映射关系,进而返回对应的对象数据。该方法实现了对象关系的映射,并能应用于复杂的数据模型中,解决了现有硬编码技术存在编码混乱的问题;另外,本申请的对象关系映射方法中,根据对象数据和映射文件,能够对当前的查询条件和表连接关系进行拼装,灵活性高,复用程度高。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种对象关系映射方法、装置及处理器。
背景技术
在软件工程中,经常需要将数据存储到关系数据库中,以便进行应用访问。而随着信息系统的发展,面向对象的开发思想得到广泛运用,从而带来了关系型数据与对象数据的转换需求问题。
关系型数据与对象数据的转换,通常称为对象关系映射(Object RelationalMapping,ORM)。为了实现对象关系的映射,现有技术中,采用了两种方式。其中一种,是在面向对象的程序代码中,直接嵌入数据库语句,从而以硬编码的方式,实现数据库返回的结果与对象数据的映射;第二种方式,借助第三方框架,预先建立对象与关系数据间完整的映射关系,根据所述映射关系实现映射。
但是,发明人在本申请的研究过程中发现,采用现有技术进行ORM映射时,还存在一定的问题,例如,采用第一种方式进行ORM映射时,只能应用于简单的数据模型中,在数据模型规模较大时,会导致编码混乱,难以维护;采用第二种方式进行ORM映射时,针对每次的复杂查询需求,都需要相应的设置对象和关系数据的映射关系,灵活性较低,复用程度差。
发明内容
有鉴于此,本发明的目的在于提供一种对象关系映射方法、装置及处理器,用于解决现有技术在进行对象关系映射时,第一种方法中存在的编码混乱,难以维护,第二种方法中存在的灵活性较低,复用程度差的问题,具体实施方案如下:
一种对象关系映射方法,包括:
根据关系数据模型中的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建所述待查询的业务主题对应的数据关联模型,其中,所述数据关联模型的节点为所述业务模型中定义的数据库表的别名;
当需要查询数据库表中的数据时,接收数据库操作语句和查询参数,所述数据库操作语句中包含当前查询需求对应的数据库表的别名和字段,并通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;
接收对象操作数据,所述对象操作数据中包含当前查询需求对应的类名和类的属性,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,其中,所述预设的映射文件包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
优选的,所述构建所述待查询的业务主题对应的数据关联模型,包括:
获取所述业务模型中的数据库表后,根据所述关系数据模型,判断各个所述数据库表之间的关联方式;
接收连通图的配置文件,为具有关联的所述数据库表构建相应的连通图,并获取与其他数据库表没有关联的数据库表,构建相应的数据关联模型;
所述数据关联模型中包括:具有关联的数据库表构成的连通图,和与其他数据库表没有关联的数据库表。
优选的,所述通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名建立相应的表连接关系,包括:
根据所述数据关联模型,从所述当前查询需求对应的数据库表的别名中选取根节点,其中所述根节点为关联其他数据库表的别名最多的数据库表;
通过所述数据关联模型提供的关联关系,获取所述根节点到所述当前查询对应的各个数据库表的别名的路径;
将所述路径两两合并,获取最小连通子图,并通过所述最小连通子图指示的连接关系,建立所述当前查询需求对应的表连接关系。
优选的,所述根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,包括:
根据所述数据库操作语句和查询参数,获取当前查询需求对应的数据库表的别名和物理字段,并根据所述表连接关系和所述预设的映射文件中数据表的别名与数据库表名称的对应关系,获取所述当前查询需求对应的数据库表的数据;
通过所述对象操作数据,以及预设的映射文件中类名与数据库表的别名的对应关系、类的属性与数据库表的物理字段的对应关系,将所述当前查询需求对应的数据库表的数据转化为相应的对象数据并返回。
优选的,当所述数据库操作语句中包含的相应的字段为当前查询需求对应的逻辑字段时,所述获取所述当前查询需求对应的数据库表的物理字段,包括:
获取所述数据库操作语句中的逻辑字段;
根据预设的逻辑字段与物理字段的映射关系,获取当前查询需求对应的物理字段。
相应的,本发明还公开了一种对象关系映射装置,包括:
数据关联模型构建模块,用于根据关系数据模型中的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建所述待查询的业务主题对应的数据关联模型,其中,所述数据关联模型的节点为所述业务模型中定义的数据库表的别名;
表连接关系构建模块,用于当需要查询数据库表中的数据时,接收数据库操作语句和查询参数,所述数据库操作语句中包含当前查询需求对应的数据库表的别名和字段,并通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;
对象数据返回模块,用于接收对象操作数据,所述对象操作数据中包含当前查询需求对应的类名和类的属性,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,其中,所述预设的映射文件包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
优选的,所述数据关联模型构建模块包括:
判断单元,用于获取所述业务模型中的数据库表后,根据所述关系数据模型,判断各个所述数据库表之间的关联方式;
构建单元,用于接收连通图的配置文件,为具有关联的所述数据库表构建相应的连通图,并获取与其他数据库表没有关联的数据库表,构建相应的数据关联模型;
所述数据关联模型中包括:具有关联的数据库表构成的连通图,和与其他数据库表没有关联的数据库表。
优选的,所述表连接关系构建模块包括:
根节点获取单元,用于根据所述数据关联模型,从所述当前查询需求对应的数据库表的别名中选取根节点,其中所述根节点为关联其他数据库表的别名最多的数据库表;
通过所述数据关联模型提供的关联关系,获取所述根节点到所述当前查询对应的各个数据库表的别名的路径;
表连接构建单元,用于将所述路径两两合并,获取最小连通子图,并通过所述最小连通子图指示的连接关系,建立所述当前查询需求对应的表连接关系。
优选的,所述对象数据返回模块包括:
数据库表数据获取单元,用于根据所述数据库操作语句和查询参数,获取当前查询需求对应的数据库表的别名和物理字段,并根据所述表连接关系和所述预设的映射文件中数据表的别名与数据库表名称的对应关系,获取所述当前查询需求对应的数据库表的数据;
对象数据返回单元,用于通过所述对象操作数据,以及预设的映射文件中类名与数据库表的别名的对应关系、类的属性与数据库表的物理字段的对应关系,将所述当前查询需求对应的数据库表的数据转化为相应的对象数据并返回。
优选的,当所述数据库操作语句中包含的相应的字段为逻辑字段时,所述数据库表数据获取单元包括:
逻辑字段获取子单元,用于获取所述数据库操作语句中的逻辑字段;
物理字段确定子单元,用于根据预设的逻辑字段与物理字段的映射关系,获取当前查询需求对应的物理字段。
相应的,本发明还公开了一种处理器,所述处理器中集成有如上所述的对象关系映射装置。
本申请公开了一种对象关系映射方法、装置和处理器,该方法中,首先根据关系数据模型中提供的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建待查询的业务主题对应的数据关联模型;然后,当需要查询数据库表中的数据时,接收数据库操作语句,根据所述数据库操作语句和构建的数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;最后在获取对象操作数据后,根据所述对象操作数据和预设的映射关系,获取所述对象操作数据对应的对象。
通过本申请公开的对象关系映射方法,在需要查询数据库表中的数据时,根据接收到的数据库操作语句构建相应的表连接关系,并根据接收到的对象操作数据和预设的映射关系,确定当前查询对应的数据库表的名称和数据库表的物理字段,进而返回对应的对象数据。该方法中,每次当具有查询需求时,即可根据接收到的数据库操作语句、查询参数和预先建立的数据关联模型,为本次查询需求对应的数据库表的别名和字段建立表连接关系,再根据接收到的对象操作数据和映射文件,即可实现对对象数据对应的查询条件的动态拼装,获取本次查询所需的对象数据。
该方法实现了对象关系的映射,并且能够应用于复杂的数据模型中,在现有技术中,利用硬编码方式进行对象关系的映射时,对象数据和关系数据混杂在一起,可读性差,调试调优困难,难于进行维护,本申请公开的对象关系映射方法,将对象数据和关系数据分隔,便于进行维护,降低了系统的风险。而且,本申请的对象关系映射方法中,根据对象操作数据和映射文件,能够对当前的查询条件进行拼装,相对于现有技术中,每次在具有查询需求时,都需要配置对象和关系数据间的映射关系这一方案,灵活性高,并且能够进行多次复用,复用程度高。
并且,通过本申请提供的方案进行对象关系的映射时,根据当前的查询需求和预设的映射文件,对查询条件进行拼装,即可返回所需的对象,和现有技术相比,提高了映射的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种对象关系映射方法的工作流程示意图;
图2为本发明实施例公开的一种对象关系映射方法中构建的连通图的示意图;
图3为本发明实施例公开的一种对象关系映射方法中建立表连接关系的工作流程示意图;
图4为本发明实施例公开的一种对象关系映射装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请公开了一种对象关系映射方法、装置及处理器,用于解决现有技术在进行对象关系映射时,第一种方法中存在的编码混乱,难以维护,,第二种方法中存在的灵活性较低,复用程度差的问题,参见以下实施例。
实施例一
本申请的实施例一公开了一种对象关系映射方法,用于解决现有技术在进行对象关系映射时,第一种方法中存在的编码混乱,难以维护,第二种方法中存在的灵活性较低,复用程度差的问题。
参见图1所示的工作流程示意图,所述对象关系映射方法包括:
步骤S11、根据关系数据模型中的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建所述待查询的业务主题对应的数据关联模型,其中,所述数据关联模型的节点为所述业务模型中定义的数据库表的别名。
在关系数据模型中,包含有数据结构,从而能够根据所述关系数据模型,获取数据库表的连接关系。
另外,在实际应用中,越是复杂的系统,涉及到的表会越多,一般情况下,根据业务主题会对涉及到的表进行分类。例如,在广电行业中,存在一种应用广泛的BOSS系统,在该BOSS系统中,往往划分为资源管理、客户关系管理、账目管理等相应的业务主题。在一个业务主题中,包含的数据库表往往是有限的。
在建立数据关联模型时,一个数据库表往往与其他多个数据库表具有连接关系,同一个数据库表如果被关联多次,往往需要设置别名进行区分。因此,在所述待查询的业务主题对应的业务模型中,为数据库表定义有相应的别名,其中,所述数据库表的别名与所述数据库表的物理名称形成映射。根据所述关系数据模型中包含的数据库表的连接关系,以及所述业务模型提供的待查询业务主题对应数据库表和其中定义的别名,即可构建相应的数据关联模型。
另外,如果某一个数据库表为独立的数据库表,与其他数据库表间没有关联,则可将所述数据库表的物理名称作为别名,也可为所述数据库表设置其他别名。
其中,所述数据关联模型中包括:具有关联的数据库表构成的连通图,和与其他数据库表没有关联的数据库表。另外,若所述数据关联模型中涉及到的数据库表间均有关联,则所述数据关联模型中包括连通图。
步骤S12、当需要查询数据库表中的数据时,接收数据库操作语句和查询参数,所述数据库操作语句中包含当前查询需求对应的数据库表的别名和字段,并通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系。
在需要查询数据库表中的数据时,需要根据当前查询需求,由操作人员输入相应的数据库操作语句和查询参数,该数据库操作语句中,包含当前查询需求对应的数据库表的别名和相应的字段。其中,所述字段为当前查询需求对应的物理字段或逻辑字段。另外,所述表连接关系中包含的字段为物理字段或逻辑字段。
在现有技术中,利用数据库语句进行数据库表的查询时,所述数据库语句中需要包含待查询数据库表的物理字段和表示表连接关系的子句,例如,在SQL数据库中,所述表示表连接的子句通常为from子句。而本申请公开的数据库操作语句中,预先存储了数据库表的别名和实际的物理名称间的映射关系,且所述数据关联模型中包含数据库表的连接关系,因此,所述数据库操作语句中包含数据库表的别名和相应的字段即可。当所述数据库为SQL(Structured Query Language,结构化查询语言)数据库,现有技术中的数据库语句称为SQL语句时,可将本申请中的数据库操作语句称为SimpleQL语句。
在获取到操作人员输入的数据库操作语句后,会获取所述数据库操作语句中包含的数据库表的别名和相应的字段,通过查询参数以及所述数据关联模型,能够构建当前查询需求对应的表连接关系。
步骤S13、接收对象操作数据,所述对象操作数据中包含当前查询需求对应的类名和类的属性,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,其中,所述预设的映射文件包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
在需要进行数据库表的查询时,操作人员会输入对象操作数据,通过所述对象操作数据和预设的映射文件,即可确定当前查询对应的数据库表的名称和数据库表的物理字段,继而确定待查询的数据库表,并按照映射文件,将其转化为相应的对象并返回。通过该步骤,既可根据对象操作数据和映射文件实现对查询条件的动态拼装。
本申请公开了一种对象关系映射方法,该方法中,首先根据关系数据模型中提供的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建待查询的业务主题对应的数据关联模型;然后,当需要查询数据库表中的数据时,接收数据库操作语句,根据所述数据库操作语句和构建的数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;最后在获取对象操作数据后,根据所述对象操作数据和预设的映射关系,获取所述对象操作数据对应的对象。
通过本申请公开的对象关系映射方法,在需要查询数据库表中的数据时,根据接收到的数据库操作语句构建相应的表连接关系,并根据接收到的对象操作数据和预设的映射关系,确定当前查询对应的数据库表的名称和数据库表的物理字段,进而返回对应的对象数据。该方法中,每次当具有查询需求时,即可根据接收到的数据库操作语句、查询参数和预先建立的数据关联模型,为本次查询需求对应的数据库表的别名和字段建立表连接关系,再根据接收到的对象操作数据和映射文件,即可实现对对象数据对应的查询条件的动态拼装,获取本次查询所需的对象数据。
该方法实现了对象关系的映射,并且能够应用于复杂的数据模型中,在现有技术中,利用硬编码方式进行对象关系的映射时,对象数据和关系数据混杂在一起,可读性差,调试调优困难,难于进行维护,本申请公开的对象关系映射方法,将对象数据和关系数据分隔,便于进行维护,降低了系统的风险。而且,本申请的对象关系映射方法中,根据对象操作数据和映射文件,能够对当前的查询条件进行拼装,相对于现有技术中,每次在具有查询需求时,都需要配置对象和关系数据间的映射关系这一方案,灵活性高,并且能够进行多次复用,复用程度高。
并且,通过本申请提供的方案进行对象关系的映射时,根据当前的查询需求和预设的映射文件,对查询条件进行拼装,即可返回所需的对象,和现有技术相比,提高了映射的效率。
进一步的,本申请的步骤S11中公开的所述构建所述待查询的业务主题对应的数据关联模型,包括:
首先,获取所述业务模型中的数据库表后,根据所述关系数据模型,判断各个所述数据库表之间的关联方式,其中,所述关联方式包括:左关联、右关联、内关联和全关联等。
然后,接收连通图的配置文件,为具有关联的所述数据库表构建相应的连通图,并获取与其他数据库表没有关联的数据库表,构建相应的数据关联模型。
在数据关联模型中,通常包括连通图和与其他数据库没有关联的独立的数据库表,其中,所述连通图由具有关联的数据库表构成,且所述数据关联模型的每个节点为相应数据库表的别名。并且,同一个数据库表在不同的节点出现时,采用不同的别名。
在构建连通图时,通常是根据接收到的连通图的配置文件实现对连通图的构建的。构建连通图的依据是连接查询,整张连通图对应该主题内最大的连接查询。在通过所述业务模型,确定各个数据库表间的关联关系后,通常需要接收操作人员输入的连通图的配置文件,进行连通图的构建。
在通过连通图的配置文件进行连通图的构建时,是通过两两构建数据库表的关联关系实现的。例如,定义两个节点a和ccv的关联,其中a和ccv分别对应两个数据库表的别名,且关联字段为表别名a的字段CARDCATAID_PK和表别名ccv的字段CARDCATAID_PK时,连通图的配置文件的形式如下:
<join id="a_ccv"from="a"to="ccv"type=”LEFT”>
<on from="CARDCATAID_PK"to="CARDCATAID_PK"/>
</join>
其中id唯一标识该关联Join,join标签中的from、to指定两个物理表别名,type指定关联形式,on标签中from、to指定两别名关联的字段,关联形式包括:左关联(LEFT)、右关联(RIGHT)、内关联(INNER)、全关联(FULL),且连通图中两两关联都通过join标签定义。
另外,如果连通图中存在一个环时,需定义相应的环结构。假设构成该环结构的数据库表的别名为cv、res和csv时,连通图的配置文件的形式如下:
根据接收到的上述连通图的配置文件,即可完成连通图的构建,按照上述连通图的配置文件构建的连通图如图2所示,其中,在该连通图中的每一条线用于表示连个数据库表的别名之间的连接。
通过上述步骤实现对数据关联模型的构建后,需要根据所述数据关联模型,构建当前查询需要的表连接关系。在构建当前查询需求对应的表连接关系前,需要根据数据库操作语句,获取其中包含的当前查询需求对应的数据库表的别名和字段。例如数据库操作语句为:select a.*,ccv.CARDCATAID_PKfrom cv_res where a.CARDCATAID_PK=1,通过该数据库操作语句,解析影响表连接的子句,即可获取当前查询需求对应的数据库表的别名。另外,如果当前查询需求对应的数据库表涉及到环形关联时,需要在from子句后面跟上环中表的关联join的id,以明确待查询的数据库表在环中的关联形式,避免二义性。
接收到数据库操作语句后,步骤S12中公开了通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名建立相应的表连接关系的方案,参见图3所示的工作流程示意图,该方案包括:
步骤S121、根据所述数据关联模型,从所述当前查询需求对应的数据库表的别名中选取根节点,其中所述根节点为关联其他数据库表的别名最多的数据库表。如果同时关联其他数据库表的别名最多的数据库表有多个时,可任选其中一个做为根节点。
步骤S122、通过所述数据关联模型提供的关联关系,获取所述根节点到所述当前查询对应的各个数据库表的别名的路径。
该步骤中,通过数据库操作语句获取到当前查询需求对应的数据库表的别名后,采用深度优先遍历树的方式,即可取得根节点到各个数据库表的路径,假设路径分别为L1、L2……Ln,其中n=1、2……,表示路径的编号,每一条路径都是一个从数据库表到所述根节点的有序集合。
步骤S123、将所述路径两两合并,获取最小连通子图,并通过所述最小连通子图指示的连接关系,建立所述当前查询需求对应的表连接关系。
通过两两合并,能够获取当前查询需求对应的最小连通子图。所述最小连通子图指的是数据关联模型中的一个子图,该子图满足两个条件:一是当前查询需求对应的各个数据库表的别名都在该子图中,二是这个子图中,去掉任意一个节点,都会导致不满足第一个条件。
其中,两两合并的算法如下:
①设定一个元素为数据库表的别名的集合R,首先将路径L1中包含的所有数据库表的别名放入集合R中,并设定一个索引变量i(1=<i<=n,n为路径的数量),所述索引变量i的初始值为1;
②读取集合Li中第一个元素,即第一个数据库表的别名Li1,遍历R,检查R中是否存在Li1;
③若R中存在Li1,所述索引变量i增加1,若i<=n,则返回到步骤②,否则执行步骤⑤的操作;
④若R中不存在Li1,将Li1对应的数据库表的别名加入集合R,然后将所述索引变量i增加1,则返回到步骤②,否则执行步骤⑤的操作;
⑤最终得到的集合R即是包含当前查询需求对应的数据库表的别名的最小连通子图。
在按照上述获取到最小连通子图后,即可根据所述最小连通子图指示的连接关系,建立当前查询需求对应的表连接关系。
进一步的,步骤S13中,公开了接收对象操作数据,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据的方案。
其中,所述对象操作数据由操作人员输入,包含有当前查询需求对应的类名和类的属性。所述预设的映射文件中,包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
所述根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,包括以下步骤:
首先,根据所述数据库操作语句和查询参数,获取当前查询需求对应的数据库表的别名和物理字段,并根据所述表连接关系和所述预设的映射文件中数据表的别名与数据库表名称的对应关系,获取所述当前查询需求对应的数据库表的数据。
在所述预设的映射文件中,包含有类名和数据库表的名称的映射关系,该映射文件中,所述数据库表的名称通常为所述数据库表实际的物理名称。若当前查询需求对应的数据库表含有别名时,在通过所述预设的映射文件和对象操作数据获取所述数据库表的名称时,需要通过数据库表的别名和数据库表实际的物理名称间的映射关系,确定所述数据库表的别名,然后再根据所述表连接关系,获取所述当前查询需求对应的数据库表的数据。
然后,通过所述对象操作数据,以及预设的映射文件中类名与数据库表的别名的对应关系、类的属性与数据库表的物理字段的对应关系,将所述当前查询需求对应的数据库表的数据转化为相应的对象数据并返回。
通过上述步骤,即可获取当前查询需求对应的对象数据。
其中,所述映射文件可通过以下方式创建:
其中,最外层的table标签对应一个数据库表,存在以下三个属性:id,用于唯一标识一个表映射定义;name指数据库表实际的物理名称;alias指该数据库表的别名,当有多个时以逗号隔开;class指该数据库表对应的类。该处定义表示数据库表RESOURCETYPEEN与类resourceType的映射,表别名为rtv,该条映射定义有一个唯一标识resourcetype。
Table标签内部存在两种标签,一个是id标签,标识数据库表主键的定义;一个是column标签,表示普通字段的定义。两种标签的属性定义是一样的,有name、field和property三个关键属性,分别表示应用程序中的逻辑字段名称、数据库表的字段名称和映射的类的属性名称,当省略field属性时,表示field的值和name一样。该处定义表示表RESOURCETYPEEN有5个字段与类属性映射,其中RESOURCETYPEID_PK为主键,与类resourceType的属性id对应,其他字段为普通字段,数据库表RESOURCETYPEID_FK字段与类属性parentResType对应,其他同理。
另外,在本申请公开的对象关系映射方法中,所述数据库操作语句中包含的字段为物理字段或逻辑字段,其中,物理字段为数据库表真实的字段,而逻辑字段为操作人员设定的与所述物理字段相对应的字段。
当步骤S12中接收到的所述数据库操作语句中包含的相应的字段为逻辑字段时,上述公开的获取所述当前查询需求对应的数据库表的物理字段的方案,包括:
获取所述数据库操作语句中的逻辑字段,然后,根据预设的逻辑字段与物理字段的映射关系,获取当前查询需求对应的物理字段。
当步骤S12中,接收到的所述数据库操作语句中包含的相应的字段为逻辑字段时,根据物理字段和逻辑字段的对应关系,就可以获取当前查询需求对应的物理字段。
这种情况下,当数据库表的物理字段发生变化时,只需相应修改物理字段和逻辑字段的对应关系即可,而不需要对映射文件做出修改,降低了对象数据和关系数据的耦合性,提高了对象关系映射过程中的灵活性。
实施例二
本申请的实施例二相应的公开了一种对象关系映射装置,参见图4所示的结构示意图,所述对象关系映射装置包括:数据关联模型构建模块100、表连接关系构建模块200和对象数据返回模块300。
其中,所述数据关联模型构建模块100,用于根据关系数据模型中的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建所述待查询的业务主题对应的数据关联模型,其中,所述数据关联模型的节点为所述业务模型中定义的数据库表的别名;
所述表连接关系构建模块200,用于当需要查询数据库表中的数据时,接收数据库操作语句和查询参数,所述数据库操作语句中包含当前查询需求对应的数据库表的别名和字段,并通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;
所述对象数据返回模块300,用于接收对象操作数据,所述对象操作数据中包含当前查询需求对应的类名和类的属性,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,其中,所述预设的映射文件包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
进一步的,所述数据关联模型构建模块100包括:
判断单元,用于获取所述业务模型中的数据库表后,根据所述关系数据模型,判断各个所述数据库表之间的关联方式;
构建单元,用于接收连通图的配置文件,为具有关联的所述数据库表构建相应的连通图,并获取与其他数据库表没有关联的数据库表,构建相应的数据关联模型;
所述数据关联模型中包括:具有关联的数据库表构成的连通图,和与其他数据库表没有关联的数据库表。
进一步的,所述表连接关系构建模块200包括:
根节点获取单元,用于根据所述数据关联模型,从所述当前查询需求对应的数据库表的别名中选取根节点,其中所述根节点为关联其他数据库表的别名最多的数据库表;
通过所述数据关联模型提供的关联关系,获取所述根节点到所述当前查询对应的各个数据库表的别名的路径;
表连接构建单元,用于将所述路径两两合并,获取最小连通子图,并通过所述最小连通子图指示的连接关系,建立所述当前查询需求对应的表连接关系。
进一步的,所述对象数据返回模块300包括:
数据库表数据获取单元,用于根据所述数据库操作语句和查询参数,获取当前查询需求对应的数据库表的别名和物理字段,并根据所述表连接关系和所述预设的映射文件中数据表的别名与数据库表名称的对应关系,获取所述当前查询需求对应的数据库表的数据;
对象数据返回单元,用于通过所述对象操作数据,以及预设的映射文件中类名与数据库表的别名的对应关系、类的属性与数据库表的物理字段的对应关系,将所述当前查询需求对应的数据库表的数据转化为相应的对象数据并返回。
进一步的,当所述数据库操作语句中包含的相应的字段为逻辑字段时,所述数据库表数据获取单元包括:
逻辑字段获取子单元,用于获取所述数据库操作语句中的逻辑字段;
物理字段确定子单元,用于根据预设的逻辑字段与物理字段的映射关系,获取当前查询需求对应的物理字段。
本申请公开了一种对象关系映射装置,该装置中,首先通过数据关联模型构建模块,构建待查询的业务主题对应的数据关联模型;然后,当需要查询数据库表中的数据时,通过表连接关系构建模块接收数据库操作语句,根据所述数据库操作语句和构建的数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;最后当对象数据返回模块获取对象操作数据后,根据所述对象操作数据和预设的映射关系,获取所述对象操作数据对应的对象。
通过本申请公开的对象关系映射装置,在需要查询数据库表中的数据时,根据接收到的数据库操作语句构建相应的表连接关系,并根据接收到的对象操作数据和预设的映射关系,确定当前查询对应的数据库表的名称和数据库表的物理字段,进而返回对应的对象数据。该装置中,每次当具有查询需求时,即可根据接收到的数据库操作语句、查询参数和预先建立的数据关联模型,为本次查询需求对应的数据库表的别名和字段建立表连接关系,再根据接收到的对象操作数据和映射文件,即可实现对对象数据对应的查询条件的动态拼装,获取本次查询所需的对象数据。
该装置实现了对象关系的映射,并且能够应用于复杂的数据模型中,在现有技术中,利用硬编码方式进行对象关系的映射时,对象数据和关系数据混杂在一起,可读性差,调试调优困难,难于进行维护,本申请公开的对象关系映射装置,将对象数据和关系数据分隔,便于进行维护,降低了系统的风险。而且,本申请的对象关系映射装置中,根据对象操作数据和映射文件,能够对当前的查询条件进行拼装,相对于现有技术中,每次在具有查询需求时,都需要配置对象和关系数据间的映射关系这一方案,灵活性高,并且能够进行多次复用,复用程度高。
并且,通过本申请提供的方案进行对象关系的映射时,根据当前的查询需求和预设的映射文件,对查询条件进行拼装,即可返回所需的对象,和现有技术相比,提高了映射的效率。
相应的,本申请还公开了一种处理器,所述处理器中集成有如上所述的对象关系映射装置。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (11)
1.一种对象关系映射方法,其特征在于,包括:
根据关系数据模型中的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建所述待查询的业务主题对应的数据关联模型,其中,所述数据关联模型的节点为所述业务模型中定义的数据库表的别名;
当需要查询数据库表中的数据时,接收数据库操作语句和查询参数,所述数据库操作语句中包含当前查询需求对应的数据库表的别名和字段,并通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;
接收对象操作数据,所述对象操作数据中包含当前查询需求对应的类名和类的属性,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,其中,所述预设的映射文件包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
2.根据权利要求1所述的方法,其特征在于,所述构建所述待查询的业务主题对应的数据关联模型,包括:
获取所述业务模型中的数据库表后,根据所述关系数据模型,判断各个所述数据库表之间的关联方式;
接收连通图的配置文件,为具有关联的所述数据库表构建相应的连通图,并获取与其他数据库表没有关联的数据库表,构建相应的数据关联模型;
所述数据关联模型中包括:具有关联的数据库表构成的连通图,和与其他数据库表没有关联的数据库表。
3.根据权利要求1至2所述的方法,其特征在于,所述通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名建立相应的表连接关系,包括:
根据所述数据关联模型,从所述当前查询需求对应的数据库表的别名中选取根节点,其中所述根节点为关联其他数据库表的别名最多的数据库表;
通过所述数据关联模型提供的关联关系,获取所述根节点到所述当前查询对应的各个数据库表的别名的路径;
将所述路径两两合并,获取最小连通子图,并通过所述最小连通子图指示的连接关系,建立所述当前查询需求对应的表连接关系。
4.根据权利要求1所述的方法,其特征在于,所述根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,包括:
根据所述数据库操作语句和查询参数,获取当前查询需求对应的数据库表的别名和物理字段,并根据所述表连接关系和所述预设的映射文件中数据表的别名与数据库表名称的对应关系,获取所述当前查询需求对应的数据库表的数据;
通过所述对象操作数据,以及预设的映射文件中类名与数据库表的别名的对应关系、类的属性与数据库表的物理字段的对应关系,将所述当前查询需求对应的数据库表的数据转化为相应的对象数据并返回。
5.根据权利要求4所述的方法,其特征在于,当所述数据库操作语句中包含的相应的字段为当前查询需求对应的逻辑字段时,所述获取所述当前查询需求对应的数据库表的物理字段,包括:
获取所述数据库操作语句中的逻辑字段;
根据预设的逻辑字段与物理字段的映射关系,获取当前查询需求对应的物理字段。
6.一种对象关系映射装置,其特征在于,包括:
数据关联模型构建模块,用于根据关系数据模型中的数据库表的连接关系,以及待查询的业务主题对应的业务模型中包含的数据库表,构建所述待查询的业务主题对应的数据关联模型,其中,所述数据关联模型的节点为所述业务模型中定义的数据库表的别名;
表连接关系构建模块,用于当需要查询数据库表中的数据时,接收数据库操作语句和查询参数,所述数据库操作语句中包含当前查询需求对应的数据库表的别名和字段,并通过所述数据关联模型,为所述当前查询需求对应的数据库表的别名和字段建立相应的表连接关系;
对象数据返回模块,用于接收对象操作数据,所述对象操作数据中包含当前查询需求对应的类名和类的属性,并根据预设的映射文件和所述表连接关系,返回所述对象操作数据对应的对象数据,其中,所述预设的映射文件包括:类名和数据库表的名称的映射关系、类的属性和数据库表的物理字段的映射关系。
7.根据权利要求6所述的装置,其特征在于,所述数据关联模型构建模块包括:
判断单元,用于获取所述业务模型中的数据库表后,根据所述关系数据模型,判断各个所述数据库表之间的关联方式;
构建单元,用于接收连通图的配置文件,为具有关联的所述数据库表构建相应的连通图,并获取与其他数据库表没有关联的数据库表,构建相应的数据关联模型;
所述数据关联模型中包括:具有关联的数据库表构成的连通图,和与其他数据库表没有关联的数据库表。
8.根据权利要求6至7所述的装置,其特征在于,所述表连接关系构建模块包括:
根节点获取单元,用于根据所述数据关联模型,从所述当前查询需求对应的数据库表的别名中选取根节点,其中所述根节点为关联其他数据库表的别名最多的数据库表;
通过所述数据关联模型提供的关联关系,获取所述根节点到所述当前查询对应的各个数据库表的别名的路径;
表连接构建单元,用于将所述路径两两合并,获取最小连通子图,并通过所述最小连通子图指示的连接关系,建立所述当前查询需求对应的表连接关系。
9.根据权利要求6所述的装置,其特征在于,所述对象数据返回模块包括:
数据库表数据获取单元,用于根据所述数据库操作语句和查询参数,获取当前查询需求对应的数据库表的别名和物理字段,并根据所述表连接关系和所述预设的映射文件中数据表的别名与数据库表名称的对应关系,获取所述当前查询需求对应的数据库表的数据;
对象数据返回单元,用于通过所述对象操作数据,以及预设的映射文件中类名与数据库表的别名的对应关系、类的属性与数据库表的物理字段的对应关系,将所述当前查询需求对应的数据库表的数据转化为相应的对象数据并返回。
10.根据权利要求9所述的装置,其特征在于,当所述数据库操作语句中包含的相应的字段为逻辑字段时,所述数据库表数据获取单元包括:
逻辑字段获取子单元,用于获取所述数据库操作语句中的逻辑字段;
物理字段确定子单元,用于根据预设的逻辑字段与物理字段的映射关系,获取当前查询需求对应的物理字段。
11.一种处理器,其特征在于,所述处理器中集成有如权利要求6至权利要求10任一项所述的对象关系映射装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410083314.2A CN104899225B (zh) | 2014-03-07 | 2014-03-07 | 对象关系映射方法、装置及处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410083314.2A CN104899225B (zh) | 2014-03-07 | 2014-03-07 | 对象关系映射方法、装置及处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104899225A true CN104899225A (zh) | 2015-09-09 |
CN104899225B CN104899225B (zh) | 2018-10-16 |
Family
ID=54031892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410083314.2A Active CN104899225B (zh) | 2014-03-07 | 2014-03-07 | 对象关系映射方法、装置及处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104899225B (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243162A (zh) * | 2015-10-30 | 2016-01-13 | 方正国际软件有限公司 | 基于关系型数据库存储的对象化数据模型查询方法及装置 |
CN105808772A (zh) * | 2016-03-28 | 2016-07-27 | 中国建设银行股份有限公司 | 一种数据定义文件生成方法及装置 |
CN106933894A (zh) * | 2015-12-31 | 2017-07-07 | 北京国双科技有限公司 | 多维度数据的查询方法及装置 |
CN107273425A (zh) * | 2017-05-18 | 2017-10-20 | 武汉普利商用机器有限公司 | 一种基于orm框架的数据库开发方法及装置 |
CN107291513A (zh) * | 2017-07-04 | 2017-10-24 | 武汉斗鱼网络科技有限公司 | 文件加载方法及装置、计算机可读存储介质 |
WO2017185801A1 (zh) * | 2016-04-25 | 2017-11-02 | 华为技术有限公司 | 分布式数据库系统中的表连接方法及分布式数据库系统 |
CN107391529A (zh) * | 2017-03-28 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种实现对象关系映射orm的方法及装置 |
CN107463669A (zh) * | 2017-08-03 | 2017-12-12 | 深圳市华傲数据技术有限公司 | 解析爬虫爬取的网页数据的方法及装置 |
CN107766376A (zh) * | 2016-08-19 | 2018-03-06 | 华为技术有限公司 | 数据对齐方法及装置 |
CN107766381A (zh) * | 2016-08-22 | 2018-03-06 | 北京京东尚科信息技术有限公司 | 数据查询方法、系统及电子设备 |
CN107817971A (zh) * | 2016-09-12 | 2018-03-20 | 南京中兴新软件有限责任公司 | Orm系统的实现方法及orm系统 |
CN108205593A (zh) * | 2017-12-29 | 2018-06-26 | 华为技术有限公司 | 一种查询的方法及装置 |
CN108228673A (zh) * | 2016-12-22 | 2018-06-29 | 上海凯翔信息科技有限公司 | 一种文件快速合并的方法和系统 |
CN108268512A (zh) * | 2016-12-30 | 2018-07-10 | 中国移动通信集团上海有限公司 | 一种标签查询方法及装置 |
CN108509524A (zh) * | 2018-03-12 | 2018-09-07 | 上海哔哩哔哩科技有限公司 | 数据处理的方法、服务器及数据处理的系统 |
CN108829884A (zh) * | 2018-06-27 | 2018-11-16 | 中国建设银行股份有限公司 | 数据映射方法及装置 |
CN108920152A (zh) * | 2018-05-25 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种在bugzilla中增加自定义属性的方法 |
CN109213826A (zh) * | 2017-06-30 | 2019-01-15 | 华为技术有限公司 | 数据处理方法和设备 |
CN109471869A (zh) * | 2018-12-27 | 2019-03-15 | 山东浪潮商用系统有限公司 | 一种本地数据库自动升级的方法及系统 |
CN109766342A (zh) * | 2018-12-28 | 2019-05-17 | 国云科技股份有限公司 | 一种基于区块链的数据存储与查询方法 |
CN111797277A (zh) * | 2020-05-19 | 2020-10-20 | 武汉乐程软工科技有限公司 | 映射对象系统与关系系统的方法、装置、计算机读存储介质及终端设备 |
CN112905642A (zh) * | 2021-02-24 | 2021-06-04 | 南京久为自动化科技有限公司 | 基于csv映射文件将iec61850报告数据存入关系数据库的方法 |
CN113535140A (zh) * | 2020-04-16 | 2021-10-22 | 武汉斗鱼网络科技有限公司 | 一种参数封装方法、装置、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103606037A (zh) * | 2013-11-06 | 2014-02-26 | 远光软件股份有限公司 | 一种业务数据的查询配置方法及装置 |
CN103577590A (zh) * | 2013-11-12 | 2014-02-12 | 北京润乾信息系统技术有限公司 | 一种数据查询方法和系统 |
-
2014
- 2014-03-07 CN CN201410083314.2A patent/CN104899225B/zh active Active
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243162A (zh) * | 2015-10-30 | 2016-01-13 | 方正国际软件有限公司 | 基于关系型数据库存储的对象化数据模型查询方法及装置 |
CN105243162B (zh) * | 2015-10-30 | 2018-10-30 | 方正国际软件有限公司 | 基于关系型数据库存储的对象化数据模型查询方法及装置 |
CN106933894A (zh) * | 2015-12-31 | 2017-07-07 | 北京国双科技有限公司 | 多维度数据的查询方法及装置 |
CN105808772A (zh) * | 2016-03-28 | 2016-07-27 | 中国建设银行股份有限公司 | 一种数据定义文件生成方法及装置 |
US11163741B2 (en) | 2016-04-25 | 2021-11-02 | Huawei Technologies Co., Ltd. | Table connection method in distributed database system and distributed database system |
WO2017185801A1 (zh) * | 2016-04-25 | 2017-11-02 | 华为技术有限公司 | 分布式数据库系统中的表连接方法及分布式数据库系统 |
CN107766376A (zh) * | 2016-08-19 | 2018-03-06 | 华为技术有限公司 | 数据对齐方法及装置 |
CN107766381A (zh) * | 2016-08-22 | 2018-03-06 | 北京京东尚科信息技术有限公司 | 数据查询方法、系统及电子设备 |
CN107817971A (zh) * | 2016-09-12 | 2018-03-20 | 南京中兴新软件有限责任公司 | Orm系统的实现方法及orm系统 |
CN108228673A (zh) * | 2016-12-22 | 2018-06-29 | 上海凯翔信息科技有限公司 | 一种文件快速合并的方法和系统 |
CN108268512A (zh) * | 2016-12-30 | 2018-07-10 | 中国移动通信集团上海有限公司 | 一种标签查询方法及装置 |
CN107391529A (zh) * | 2017-03-28 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种实现对象关系映射orm的方法及装置 |
CN107391529B (zh) * | 2017-03-28 | 2020-12-08 | 创新先进技术有限公司 | 一种实现对象关系映射orm的方法及装置 |
CN107273425B (zh) * | 2017-05-18 | 2020-05-12 | 武汉普利商用机器有限公司 | 一种基于orm框架的数据库开发方法及装置 |
CN107273425A (zh) * | 2017-05-18 | 2017-10-20 | 武汉普利商用机器有限公司 | 一种基于orm框架的数据库开发方法及装置 |
CN109213826A (zh) * | 2017-06-30 | 2019-01-15 | 华为技术有限公司 | 数据处理方法和设备 |
CN109213826B (zh) * | 2017-06-30 | 2021-10-22 | 华为技术有限公司 | 数据处理方法和设备 |
CN107291513A (zh) * | 2017-07-04 | 2017-10-24 | 武汉斗鱼网络科技有限公司 | 文件加载方法及装置、计算机可读存储介质 |
CN107291513B (zh) * | 2017-07-04 | 2020-07-31 | 武汉斗鱼网络科技有限公司 | 文件加载方法及装置、计算机可读存储介质 |
CN107463669B (zh) * | 2017-08-03 | 2020-05-05 | 深圳市华傲数据技术有限公司 | 解析爬虫爬取的网页数据的方法及装置 |
CN107463669A (zh) * | 2017-08-03 | 2017-12-12 | 深圳市华傲数据技术有限公司 | 解析爬虫爬取的网页数据的方法及装置 |
CN108205593A (zh) * | 2017-12-29 | 2018-06-26 | 华为技术有限公司 | 一种查询的方法及装置 |
CN108509524A (zh) * | 2018-03-12 | 2018-09-07 | 上海哔哩哔哩科技有限公司 | 数据处理的方法、服务器及数据处理的系统 |
CN108920152A (zh) * | 2018-05-25 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种在bugzilla中增加自定义属性的方法 |
CN108920152B (zh) * | 2018-05-25 | 2021-07-23 | 郑州云海信息技术有限公司 | 一种在bugzilla中增加自定义属性的方法 |
CN108829884A (zh) * | 2018-06-27 | 2018-11-16 | 中国建设银行股份有限公司 | 数据映射方法及装置 |
CN108829884B (zh) * | 2018-06-27 | 2021-10-15 | 中国建设银行股份有限公司 | 数据映射方法及装置 |
CN109471869A (zh) * | 2018-12-27 | 2019-03-15 | 山东浪潮商用系统有限公司 | 一种本地数据库自动升级的方法及系统 |
CN109766342A (zh) * | 2018-12-28 | 2019-05-17 | 国云科技股份有限公司 | 一种基于区块链的数据存储与查询方法 |
CN109766342B (zh) * | 2018-12-28 | 2023-05-30 | 国云科技股份有限公司 | 一种基于区块链的数据存储与查询方法 |
CN113535140A (zh) * | 2020-04-16 | 2021-10-22 | 武汉斗鱼网络科技有限公司 | 一种参数封装方法、装置、设备及存储介质 |
CN111797277A (zh) * | 2020-05-19 | 2020-10-20 | 武汉乐程软工科技有限公司 | 映射对象系统与关系系统的方法、装置、计算机读存储介质及终端设备 |
CN112905642A (zh) * | 2021-02-24 | 2021-06-04 | 南京久为自动化科技有限公司 | 基于csv映射文件将iec61850报告数据存入关系数据库的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104899225B (zh) | 2018-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104899225A (zh) | 对象关系映射方法、装置及处理器 | |
US10860632B2 (en) | Information query method and device | |
US8527451B2 (en) | Business semantic network build | |
US10346399B2 (en) | Searching relational and graph databases | |
US9201700B2 (en) | Provisioning computer resources on a network | |
US9753960B1 (en) | System, method, and computer program for dynamically generating a visual representation of a subset of a graph for display, based on search criteria | |
US9378226B1 (en) | Method and system for a user-defined field type | |
CN104965735A (zh) | 用于生成升级sql脚本的装置 | |
CN109062952A (zh) | 一种数据查询方法、装置及电子设备 | |
CN107679071B (zh) | 一种面向关系数据库的通用数据服务定制化封装方法 | |
CN114691786A (zh) | 数据血缘关系的确定方法及装置、存储介质、电子装置 | |
US10360232B2 (en) | Semantic mapping of data from an entity-relationship model to a graph-based data format to facilitate simplified querying | |
WO2019015364A1 (zh) | 执行结构化查询语言sql指令的方法和装置 | |
CN104317964A (zh) | 一种基于iBatis的对象关系映射方法及系统 | |
CN105760418B (zh) | 用于对关系数据库表进行交叉列搜索的方法和系统 | |
CN110765750A (zh) | 报表数据录入方法及终端设备 | |
US8239371B2 (en) | Fast search views over business objects | |
CN114218266A (zh) | 一种数据查询方法、装置、电子设备和存储介质 | |
CN104050264A (zh) | 一种生成sql语句的方法和装置 | |
US20210064660A1 (en) | Graph search using index vertices | |
EP2187320A2 (en) | Apparatus and method for utilizing context to resolve ambiguous queries | |
CN113779068B (zh) | 数据查询方法、装置、设备及存储介质 | |
JP2022050327A (ja) | デジタルツインおよびグラフベース構造を用いたコンピュータ実装システムおよび方法 | |
CN108241624A (zh) | 一种查询脚本的生成方法及装置 | |
CN112800056A (zh) | 基于多粒度时空数据的多层索引构建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220112 Address after: 100010 8th floor, longfu building, No. 95, longfushi street, Dongcheng District, Beijing Patentee after: Beijing State Owned Financial Leasing Co.,Ltd. Address before: 100085 No. 002, Section C, third floor, building 1, Third Street, Shangdi Information Industry base, Haidian District, Beijing Patentee before: BEIJING STARTIMES SOFTWARE TECHNOLOGY Co.,Ltd. |