一种对象关系映射中的赋值方法及装置的制造方法

文档序号:9787470阅读:284来源:国知局
一种对象关系映射中的赋值方法及装置的制造方法
【技术领域】
[0001]本发明涉及互联网信息处理技术领域,更具体的涉及一种对象关系映射中的赋值方法及装置。
【背景技术】
[0002]对象关系映射(Object Relat1nal Mapping,中文简称:0RM)是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。
[0003]目前,对象关系映射java实现中,通常使用JDBC(JavaData Base Connectivity,中文简称:java数据库连接)访问数据库,从数据库中获取待映射的数据集,通过遍历待映射数据集,逐行将待映射数据集转化为java对象。其中,将待映射数据集转换为java对象前,需要先创建java对象,并通过java类的反射机制获取该java对象的设置方法,然后完成转换过程中的赋值操作。
[0004]由于使用java类的反射机制会引起代码的执行效率下降,而且在对象关系映射过程中,需要进行大量待映射数据集转化java对象操作。这个过程隐含大量使用java的反射机制,导致降低了代码的执行效率。

【发明内容】

[0005]本发明实施例提供一种对象关系映射中的赋值方法及装置,用以解决现有技术对象关系映射java实现中,存在大量使用java的反射机制,导致代码的执行效率低的问题。
[0006]本发明实施例提供一种对象关系映射中的赋值方法,该方法包括:
[0007]遍历待映射数据集,以行为单位获取所述待映射数据集的数据,根据所述获取的数据,生成对象标识;
[0008]根据所述对象标识和映射关系集的对应关系,获取所述对象标识中的映射标识;
[0009]根据所述映射关系集中的映射标识,将所述待映射数据集转换为目标对象。
[0010]优选地,所述根据所述对象标识和映射关系集的对应关系,获取所述对象标识中的映射标识,还包括:
[0011 ]若所述对象标识与所述映射关系集不存在映射关系,利用反射机制获取所述对象标识的映射标识,并将所述对象标识的映射标识存储在所述映射关系集中。
[0012]优选地,所述映射标识包括第一标识和第二标识;
[0013]所述遍历待映射数据集之前,还包括:
[0014]创建所述映射关系集,所述映射关系集包括第一关系和第二关系;
[0015]所述第一关系用于存储第一标识,所述第二关系用于存储第二标识。
[0016]优选地,所述遍历待映射数据集之前,还包括:
[0017]通过数据库连接JDBC访问所述待映射数据集。
[0018]本发明实施例还提供一种对象关系映射中的赋值装置,包括:
[0019]生成单元,用于遍历待映射数据集,以行为单位获取所述待映射数据集的数据,根据所述获取的数据,生成对象标识;
[0020]获取单元,用于根据所述对象标识和映射关系集的对应关系,获取所述对象标识中的映射标识;
[0021]转换单元,用于根据所述映射关系集中的映射标识,将所述待映射数据集转换为目标对象。
[0022]优选地,所述获取单元具体用于:
[0023]若所述对象标识与所述映射关系集不存在映射关系,利用反射机制获取所述对象标识的映射标识,并将所述对象标识的映射标识存储在所述映射关系集中。
[0024]优选地,所述映射标识包括第一标识和第二标识;
[0025]所述生成单元还用于:
[0026]创建所述映射关系集,所述映射关系集包括第一关系和第二关系;
[0027]所述第一关系用于存储第一标识,所述第二关系用于存储第二标识。
[0028]优选地,所述生成单元还用于:
[0029]通过数据库连接JDBC访问所述待映射数据集。
[0030]本发明实施例中,遍历待映射数据集,以行为单位获取所述待映射数据集的数据,根据所述获取的数据,生成对象标识;根据所述对象标识和映射关系集的映射关系,获取所述对象标识中的映射标识;根据所述映射关系集中的映射标识,将所述待映射数据集转换为目标对象。由于预先将待映射数据集中的对象标识按照和映射关系集的映射关系,存储在映射关系集中,在将待映射数据集转换为目标对象时,可以从映射关系集中的映射关系获取对象标识,减少了 java反射机制的使用,从而提尚代理执彳丁效率。
【附图说明】
[0031]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1为本发明实施例提供的一种对象关系映射中的赋值方法流程示意图;
[0033]图2为本发明实施例提供的一种对象关系映射中的赋值装置结构示意图。
【具体实施方式】
[0034]本发明实施例中,遍历待映射数据集,以行为单位获取所述待映射数据集的数据,根据所述获取的数据,生成对象标识;根据所述对象标识和映射关系集的映射关系,获取所述对象标识中的映射标识;根据所述映射关系集中的映射标识,将所述待映射数据集转换为目标对象。由于预先将待映射数据集中的对象标识,按照和映射关系集的映射关系已经存储在映射关系集中,再将待映射数据集转换为目标对象时,可以从映射关系集的映射关系中获取对象标识,减少了 java反射机制的使用,从而提高代理执行效率。
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]本发明实施例中涉及的技术术语:
[0037]1、对象关系映射(Ob ject Relat1nal Mapping,简称:0RM)是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。
[0038]2、JDBC(Java Data Base Connectivity,简称:java数据库连接)是一种用于执行SQL(Structured Query Language,中文为:结构化查询语言)语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
[0039]3、MAP:中文为映射,是由关键字(key)及其对应的元素值(value)所组成的元素单元(e I ement)的表单式集合。
[0040]图1示例性示出本发实施例提供的一种对象关系映射中的赋值方法流程示意图,该方法可以应用于Java语言实现对象关系映射中。
[0041]如图1所示,本发明实施例提供的一种对象关系映射中的赋值方法,可以包括下列步骤:
[0042]步骤101,遍历待映射数据集,以行为单位获取所述待映射数据集的数据,根据所述获取的数据,生成对象标识;
[0043]步骤102,根据所述对象标识和映射关系集的对应关系,获取所述对象标识中的映射标识;
[0044]步骤103,根据所述映射关系集中的映射标识,将所述待映射数据集转换为目标对象。
[0045]在步骤101中,待映射数据集存储在数据库中,通过JDBC访问数据库之后,可以获取待映射数据集。
[0046]需要说明的是,待映射数据集可以存储在数据库,还可以存储在其他区域。本发明实施例中,对待映射数据集的存储区域不做具体的限定。
[0047]若待映射数据集存储在数据库,可以通过JDBC访问数据库,获取待映射数据集;还可以通过其他方式访问数据库,从数据库中获取待映射数据库,本发明实施例中,对获取数据库中存储的待映射数据集的方法不做具体的限定。
[0048]在本发明实施例中,为了减少使用Java的反射机制,可以在获取待映射数据集之前,创建一个映射关系集,其中,映射关系集可以包括第一关系和第二关系,第一关系用于存储第一标识,第二关系用于存储第二标识。具体地,映射关系集可以是Map对象,根据Map对象的结构,可以知道,Map对象的Key为第一关系,用于存储Java对象的对象标识,Map对象的Value为第二关系,用于存储Java对象的设置方法,而Map对象的第一关系和第二关系中存储的Java对象的对象标识和设置方法,构成了 Java对象的映射标识。
[0049]在获取待映射数据集之后,可以以行为单位获取待映射数据集的数据,需要说明的是,在本发明实施例中,还可以以其他方式获取待映射数据集中的数据。
[0050]根据获取的待映射数据集的数据,可以根据设定的算法,将待映射数据集中的数据生成对象标识。具体地,可以将获取的待映射数据创建为Java对象,根据创建的Java对象,生成Java对象的对象标识。在本发明实施例中,对获取的待映射数据集生成的对象标识不做具体的限定。[0051 ]在步
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1