一种对象处理方法与设备的制造方法

xiaoxiao2021-2-28  192

一种对象处理方法与设备的制造方法
【技术领域】
[0001] 本申请涉及计算机领域,尤其涉及一种对象处理技术。
【背景技术】
[0002] 面向对象编程(OOP)因其封装、继承等技术优势被应用于越来越多的系统;而且, 在实际应用中,对象实例往往还需要被持久化,例如通过将该对象实例映射至关系型数据 库实现该对象实例在该关系型数据库中持久存储,以便后续访问该对象实例的相关数据。
[0003] 随着分布式系统技术的发展,开始涌现基于其他结构的存储组织,例如ZooKe印er 等树形存储结构。ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可 靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的 目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统 提供给用户。对于一些数据量不大,单个数据较小,数据一致性要求较高的场景,可以考虑 使用zooke印er进行一些关键数据的持久化,比如配置文件,系统的元信息等。由于树形存 储结构与关系型数据库的不同存储结构,现有技术无法实现对象实例至树形存储结构的映 射。
[0004] 申请内容
[0005] 本申请的目的是提供一种对象处理方法及设备。
[0006] 根据本申请的一个方面,提供了一种对象处理方法,包括:
[0007] 获取关于对象实例的映射标注信息;
[0008] 根据所述映射标注信息将所述对象实例映射至对应应用的节点树。
[0009] 根据本申请的另一方面,还提供了一种对象处理设备,包括:
[0010] 第一装置,用于获取关于对象实例的映射标注信息;
[0011] 第二装置,用于根据所述映射标注信息将所述对象实例映射至对应应用的节点 树。
[0012] 与现有技术相比,本申请通过在对象实例中附带映射标注信息的方式来将对象实 例映射至与节点树相映射,以实现对象实例在树形存储结构中的持久化存储,提高了对对 象实例的操作效率;同时,由于对象实例和映射标注信息均以面向对象程序设计思想进行 设计,对于研发人员来说,能够有效简化编程。
【附图说明】
[0013] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它 特征、目的和优点将会变得更明显:
[0014] 图1示出根据本申请一个方面的一种对象处理设备示意图;
[0015] 图2示出根据本申请一个优选实施例所得到的节点树的结构示意图图;
[0016] 图3示出根据本申请一个优选实施例的一种对象处理设备示意图;
[0017] 图4示出根据本申请另一个方面的一种对象处理方法流程图;
[0018] 图5示出根据本申请一个优选实施例的一种对象处理方法流程图;
[0019] 附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0020] 下面结合附图对本申请作进一步详细描述。
[0021] 在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个 处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永 久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或 闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久 性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可 读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变 内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机 存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPR0M)、快闪记忆体 或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、 磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以 被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
[0022] 图1示出根据本申请一个方面的一种对象处理设备。所述对象处理设备1包括: 第一装置11和第二装置12。具体地,所述第一装置11用于获取关于对象实例的映射标注 信息。所述第二装置12用于根据所述映射标注信息将所述对象实例映射至对应应用的节 点树。
[0023] 在此,所述对象处理设备1可由网络主机、单个网络服务器、多个网络服务器集或 个人计算机等实现。本领域技术人员应能理解上述对象处理设备1仅为举例,其他现有的 或今后可能出现的对象处理设备1如可适用于本申请,也应包含在本申请保护范围以内, 并在此以引用方式包含于此。在此,所述对象处理设备1包括一种能够按照事先设定或存 储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用 集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。
[0024] 具体地,在面向对象的程序运行中,所述第一装置11从对象实例中所携带的注解 中获取关于所述对象实例的映射标注信息,并将所述映射标注信息提供给所述第二装置 12。接着,所述第二装置12根据所述映射标注信息中所提供的信息来确定相应应用的节点 树,并将所述对象实例与所述节点树相映射。
[0025] 例如,所述第一装置11从一对象实例中的ONode注解类中获得的映射标注信息中 包括"/Consumer",并将所述映射标注信息和所述对象实例提供给所述第二装置12,则所 述第二装置12根据所接收的映射标注信息确定根节点为Consumer的节点树,并将所述对 象实施例与该节点树相映射。其中,所述第二装置12可以根据所述映射标注信息中的其他 标注信息从该节点树中确定一个节点来对应所述对象实例的属性。
[0026] 在此,所述对象实例包括任何用于直接参与实现某具体功能的、基于面向对象编 程思想所构建的对象实例,而非抽象类。其包括但不限于:Pojo (Plain Old Java Object, 简单的Java对象)对象等。
[0027] 在此,所述应用的节点树是指以树形数据结构形式来对应某一应用中所暂存或持 久保存的数据的方式,其包括但不限于:用于映射存储在缓存(cache)或内存中数据的树 形结构。例如,/Consumer/test的节点树中的Consumer既为根节点也对应该应用,test为 Consumer根节点下的一个子节点,该子节点映射一个对象实例的属性。
[0028] 在此,所述映射标注信息包括任何用于表示对象实例所对应的节点树及节点属性 的信息。其包括但不限于以下至少任一项:类标注信息、字段标注信息。其中,所述字段标 注信息包括:1)用于将对象实例的属性持久化于对应节点路径的字段标注信息。例如,节 点树的根节点为"Consumer",与所述根节点相连的节点A1的名称为"test",类似于目录的 格式,则所述字段标注信息中表示节点A1的方式为"/Consumer/test ",所述第二装置12可 根据该字段标注信息能够找到对象实例所要映射的"/Consumer"节点树中的"/Consumer/ test"节点树。
[0029] 2)用于将对象实例的属性持久化于顺序节点所生成的递增数值的字段标注信息。 具体地,节点树中的每个节点按照建立顺序设置ID数值,则所述第二装置12可根据所接收 的ID数值来确定相应的节点树中的分支,并建立所确定的节点树中的节点与对象实例的 属性的映射关系。例如,在注解类中标注设置如下代码,则当所述第二装置在节点数中添加 节点时,节点的ID数值由0开始自动加1。
[0030]
[0031] 3)用于将对象实例的属性映射为对应节点下的独立节点的字段标注信息。具体 地,在一个节点下存有一个对象实例的多个属性,每个属性由独立的字段来标注,当所述映 射标注信息中包含该字段标 注信息时,则所述第二装置12据此在所对应的节点树中的节 点中来映射一个对象实例的某一或多个属性。例如,所述第二装置12执行如下代码时,节 点树将呈现图2所示结构。具体地,当所述name参数赋值为topicB、且第二装置12接收到 包含/topics/topicB节点树及topicB节点下的taskCoftopicB字段标注信息的映射标注 信息时,则将对象实例的属性与taskCoftopicB字段标注信息相映射。
[0032]
[0033] 优选地,所述映射标注信息还可包括子节点引用信息"OSubNode",来引用当前节 点的子节点来定义该当前节点的字段。例如若当前节点仅包括一个子节点,假设子节点的 类型为Task,则可以使用如下表述 :
[0034]
[0035] 又如,若当前节点包括多个子节点时,可使用"List"关键字来引用多个字段。接 前段示例,对应于Topic类的对象实例的节点"name",引用其多个类型为partition的子节 点来定义该节点中的相关字段;对应于partition类的对象实例的节点"name",引用其多 个类型为task的子节点来定义该节点中的相关字段。在此,该等由子节点标注的字段被视 为节点树中的一个节点,并通过递归的方式被序列化或去序列化。
[0036] 当所述映射标注信息包括多个所述字段标注信息时,优选地,相邻的所述字段标 注信息通过定界符来间隔。
[0037] 具体地,当ONodeName有多个,或者ONodeName和ONodeSeq同时出现时,它们都会 出现在节点路径的名称里,为了从路径里解析出对应的字段,字段需要有定界符来分割。
[0038] 例如,所述映射标注信息中的字段标注信息为"/consumer/Cc-Dd",所述第二装置 12预设的定界符为则所述第二装置12根据下述Consumer类的定义解析所述字段标 注信息,得到:Cc 为 firstName,Dd 为 lastName。
[0039]
[0040] 则所述第二装置12在consumer节点树中的firstName为Cc、lastName为Dd的节 点处得到所映射的password属性。
[0041] 在此,所述类标注信息包括但不限于:类名等。例如,节点树中的每个节点以一个 对象实例的类名来命名。则当所述映射标注信息包含类标注信息时,所述第二装置12还根 据所述类标注信息将所述对象实例映射为对应应用的节点树。
[0042] 例如,所述第一装置11从Test类的对象实例中的注解类中获取映射标注信息 包括:"/Consumer/Test",则所述第二装置12从根节点为Consumer的节点树中找到"/ Consumer/Test"的节点树,并建立所述Test类的对象实例的属性与Test节点之间的映射 关系。
[0043] 作为一种优选方案,所述第一装置11还对对象实例执行对象操作处理,并对处理 后的所述对象实例添加映射标注信息。
[0044] 具体地,所述第一装置11按照程序设定对对象实例进行增删改等操作处理,当操 作完成后按照设计要求需要将对象实例与节点树中的某一节点进行映射时,所述第一装置 11按照所述对象实例所对应的应用的节点树的设置规则,将处理后的所述对象实例添加映 射标注信息。
[0045] 例如,所述第一装置11中预设了各应用的节点树中各节点的设置规则,其中包 括:按照应用B1中各类的类名+序号的方式来为每个节点命名。所述第一装置11按照创 建指令新增应用B1中的对象实例bl,在创建完成后按照预设的设置规则将对象实例bl添 加"/应用B1的名称/对象实例bl所在类的类名+顺序编号"的映射标注信息。
[0046] 需要说明的是,本领域技术人员应该理解,上述对对象实例进行对象操作处理的 方式、以及添加映射标注信息的方式仅为举例,其他现有的或今后可能出现的对对象实例 进行对象操作处理的方式、以及添加映射标注信息的的方式如可适用于本申请,也应包含 在本申请保护范围以内,并在此以引用方式包含于此。
[0047] 优选地,所述第一装置11还根据对象操作指令对对象实例执行对象操作处理,其 中,处理后的所述对象实例包括与所述对象操作指令相对应的映射标注信息。在此,所述对 象操作指令包括但不限于:增删改对象实例的属性的操作指令、增删改对象实例所对应的 映射标注信息的操作指令。
[0048] 例如,所述第一装置11通过执行如下代码来获取consumer对象实例的映射标注 信息及对象实例的属性。
[0051] 当所述第一装置 11 执行 mapper, save (new Consumer (〃test〃,"123456〃))的对象 操作指令时,不但创建了 一个对象实例,所述对象实例包含"/consumers/test"的映射标注 信息,还在consumer节点树中建立test节点。
[0052] 需要说明的是,本领域技术人员应该理解,上述根据对象操作指令对对象实例执 行对象操作处理仅为举例,其他现有的或今后可能出现的根据对象操作指令对对象实例执 行对象操作处理如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式 包含于此。
[0053] 图3示出了根据本申请的又一种对象处理设备1。所述对象处理设备1包括:第一 装置11、第二装置12及第三装置13。具体地,当所述对象处理设备1所处理的对象实例需 要与相应应用的节点树相映射时,所述第一装置11获取关于对象实例的映射标注信息,再 由所述第二装置12根据所述映射标注信息将所述对象实例映射至对应应用的节点树中的 节点。反过来,当所述对象处理设备1需要通过节点查询对象实例时,所述第三装置13根 据所述映射标注信息,对所述节点树进行匹配查询,确定一个或多个被映射至所述节点树 的对象实例。
[0054] 例如,所要查询的映射标注信息包括:"parent:/consumer/test",则所述第三装 置13通过查询consumer节点树,将父节点为test下的所有节点所对应的对象实例以List 类的方式予以反馈。
[0055] 又如,所述第三装置13通过执行包含如Condition where (Object key, Op op, Object value)的条件语句,来查询相应节点树中的节点,并将所找到的节点所对应的 对象实例予以反馈。需要说明的是,本领域技术人员应该理解,上述根据所述映射标注信 息,对所述节点树进行匹配查询的方式仅为举例,其他现有的或今后可能出现的根据所述 映射标注信息,对所述节点树进行匹配查询的方式如可适用于本申请,也应包含在本申请 保护范围以内,并在此以引用方式包含于此。
[0056] 图4示出根据本申请一个方面的一种对象处理方法。其中,所述对象处理方法主 要由对象处理设备来执行。所述对象处理设备在此,所述对象处理设备可由网络主机、单个 网络服务器、多个网络服务器集或个人计算机等实现。本领域技术人员应能理解上述对象 处理设备仅为举例,其他现有的或今后可能出现的对象处理设备如可适用于本申请,也应 包含在本申请保护范围以内,并在此以引用方式包含于此。在此,所述对象处理设备包括一 种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包 括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌 入式设备等。
[0057] 具体地,在步骤S1中,所述对象处理设备获取关于对象实例的映射标注信息。接 着,在步骤S2中,所述对象处理设备根据所述映射标注信息将所述对象实例映射至对应应 用的节点树。
[0058] 具体地,在面向对象的程序运行中,所述对象处理设备从对象实例中所携带的注 解中获取关于所述对象实例的映射标注信息。接着,所述对象处理设备根据所述映射标注 信息中所提供的信息来确定相应应用的节点树,并将所述对象实例与所述节点树相映射。
[0059] 例如,所述对象处理设备从一对象实例中的ONode注解类中获得的映射标注信 息中包括"/Consumer",接着,所述对象处理设备根 据所述映射标注信息确定根节点为 Consumer的节点树,并将所述对象实施例与该节点树相映射。其中,所述对象处理设备可以 根据所述映射标注信息中的其他标注信息从该节点树中确定一个节点来对应所述对象实 例的属性。
[0060] 在此,所述对象实例包括任何用于直接参与实现某具体功能的、基于面向对象编 程思想所构建的对象实例,而非抽象类。其包括但不限于:P〇jo对象等。
[0061] 在此,所述应用的节点树是指以树形数据结构形式来对应某一应用中所暂存或 持久保存的数据的方式,其包括但不限于:用于映射存储在cache、或内存中数据的树形 结构。例如,/Consumer/test的节点树中的Consumer既为根节点也对应该应用,test为 Consumer根节点下的一个子节点,该子节点映射一个对象实例的属性。
[0062] 在此,所述映射标注信息包括任何用于表示对象实例所对应的节点树及节点属性 的信息。其包括但不限于以下至少任一项:类标注信息、字段标注信息。其中,所述字段标注 信息包括:1)用于将对象实例的属性持久化于对应节点路径的字段标注信息。例如,节点 树的根节点为"Consumer",与所述根节点相连的节点A1的名称为"test",类似于目录的格 式,则所述字段标注信息中表示节点A1的方式为"/Consumer/test",所述对象处理设备可 根据该字段标注信息能够找到对象实例所要映射的"/Consumer"节点树中的"/Consumer/ test"节点树。
[0063] 2)用于将对象实例的属性持久化于顺序节点所生成的递增数值的字段标注信息。 具体地,节点树中的每个节点按照建立顺序设置ID数值,则所述对象处理设备可根据所接 收的ID数值来确定相应的节点树中的分支,并建立所确定的节点树中的节点与对象实例 的属性的映射关系。例如,在注解类中标注设置如下代码,则当所述对象处理设备在节点数 中添加节点时,节点的ID数值由0开始自动加1。
[0064]
[0065] 3)用于将对象实例的属性映射为对应节点下的独立节点的字段标注信息。具体 地,在一个节点下存有一个对象实例的多个属性,每个属性由独立的字段来标注,当所述映 射标注信息中包含该字段标注信息时,则所述对象处理设备据此在所对应的节点树中的节 点中来映射一个对象实例的某一或多个属性。例如,所述对象处理设备执行如下代码时,节 点树将呈现图2所示结构。具体地,当所述name参数赋值为topicB、且该对象处理设备接 收到包含/topics/topicB节点树及topicB节点下的taskCoftopicB字段标注信息的映射 标注信息时,则将对象实例的属性与taskCoftopicB字段标注信息相映射。
[0066]
[0067] 优选地,所述映射标注信息还可包括子节点引用信息"OSubNode",来引用当前节 点的子节点来定义该当前节点的字段。例如若当前节点仅包括一个子节点,假设子节点的 类型为Task,则可以使用如下表述:
[0068]
[0069] 又如,若当前节点包括多个子节点时,可使用"List"关键字来引用多个字段。接 前段示例,对应于Topic类的对象实例的节点"name",引用其多个类型为partition的子节 点来定义该节点中的相关字段;对应于partition类的对象实例的节点"name",引用其多 个类型为task的子节点来定义该节点中的相关字段。在此,该等由子节点标注的字段被视 为节点树中的一个节点,并通过递归的方式被序列化或去序列化。
[0070] 当所述映射标注信息包括多个所述字段标注信息时,优选地,相邻的所述字段标 注信息通过定界符来间隔。
[0071] 具体地,当ONodeName有多个,或者ONodeName和ONodeSeq同时出现时,它们都会 出现在节点路径的名称里,为了从路径里解析出对应的字段,字段需要有定界符来分割。
[0072] 例如,所述映射标注信息中的字段标注信息为"/consumer/Cc-Dd",所述对象处理 设备预设的定界符为则所述对象处理设备根据下述Consumer类的定义解析所述字段 标注信息,得到:Cc 为 firstName,Dd 为 lastName。
[0073]
[0074] 则所述对象处理设备在consumer节点树中的firstName为Cc、lastName为Dd的 节点处得到所映射的password属性。
[0075] 在此,所述类标注信息包括但不限于:类名等。例如,节点树中的每个节点以一个 对象实例的类名来命名。则当所述映射标注信息包含类标注信息时,所述对象处理设备还 根据所述类标注信息将所述对象实例映射为对应应用的节点树。
[0076] 例如,所述对象处理设备从Test类的对象实例中的注解类中获取映射标注信息 包括:"/Consumer/Test",并从根节点为Consumer的节点树中找到"/Consumer/Test"的节 点树,并建立所述Test类的对象实例的属性与Test节点之间的映射关系。
[0077] 作为一种优选方案,所述步骤S1还包括:所述对象处理设备还对对象实例执行对 象操作处理,并对处理后的所述对象实例添加映射标注信息。
[0078] 具体地,所述对象处理设备按照程序设定对对象实例进行增删改等操作处理,当 操作完成后按照设计要求需要将对象实例与节点树中的某一节点进行映射时,所述对象处 理设备按照所述对象实例所对应的应用的节点树的设置规则,将处理后的所述对象实例添 加映射标注信息。
[0079] 例如,所述对象处理设备中预设了各应用的节点树中各节点的设置规则,其中包 括:按照应用B1中各类的类名+序号的方式来为每个节点命名。所述对象处理设备按照创 建指令新增应用B1中的对象实例bl,在创建完成后按照预设的设置规则将对象实例bl添 加"/应用B1的名称/对象实例bl所在类的类名+顺序编号"的映射标注信息。
[0080] 需要说明的是,本领域技术人员应该理解,上述对对象实例进行对象操作处理的 方式、以及添加映射标注信息的方式仅为举例,其他现有的或今后可能出现的对对象实例 进行对象操作处理的方式、以及添加映射标注信息的的方式如可适用于本申请,也应包含 在本申请保护范围以内,并在此以引用方式包含于此。
[0081] 优选地,所述步骤S1还包括:所述对象处理设备根据对象操作指令对对象实例执 行对象操作处理,其中,处理后的所述对象实例包括与所述对象操作指令相对应的映射标 注信息。在此,所述对象操作指令包括但不限于:增删改对象实例的属性的操作指令、增删 改对象实例所对应的映射标注信息的操作指令。
[0082] 例如,所述对象处理设备通过执行如下代码来获取consumer对象实例的映射标 注信息及对象实例的属性。
[0083]
[0084] 当所述对象处理设备执行 mapper, save (new Consumer (〃test〃,〃123456〃))的对 象操作指令时,不但创建了 一个对象实例,所述对象实例包含"/consumers/test"的映射标 注信息,还在consumer节点树中建立test节点。
[0085] 需要说明的是,本领域技术人员应该理解,上述根据对象操作指令对对象实例执 行对象操作处理仅为举例,其他现有的或今后可能出现的根据对象操作指令对对象实例执 行对象操作处理如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式 包含于此。
[0086] 图5示出了根据本申请的又一种对象处理方法。所述对象处理方法包括:步骤S1、 S2和S3。在此,所述对象处理方法的步骤S1和S2与图3中对象处理方法中的步骤S1和 S2的内容相同或基本相同,为简明期间,故在此不再赘述,并以引用的方式包含于此。
[0087] 具体地,当所述对象处理设备所处理的对象实例需要与相应应用的节点树相映射 时,所述对象处理设备执行步骤S1 :获取关于对象实例的映射标注信息,再执行步骤S2,即 根据所述映射标注信息将所述对象实例映射至对应应用的节点树中的节 点。反过来,当所 述对象处理设备需要通过节点查询对象实例时,所述对象处理设备执行步骤S3,即根据所 述映射标注信息,对所述节点树进行匹配查询,确定一个或多个被映射至所述节点树的对 象实例。
[0088] 例如,所要查询的映射标注信息包括:"parent:/consumer/test",则所述对象处 理设备通过查询consumer节点树,将父节点为test下的所有节点所对应的对象实例以 List类的方式予以反馈。
[0089] 又如,所述对象处理设备通过执行包含如Condition where(0bject key, Op op, Object value)的条件语句,来查询相应节点树中的节点,并将所找到的节点所对应的 对象实例予以反馈。
[0090] 需要说明的是,本领域技术人员应该理解,上述根据所述映射标注信息,对所述节 点树进行匹配查询的方式仅为举例,其他现有的或今后可能出现的根据所述映射标注信 息,对所述节点树进行匹配查询的方式如可适用于本申请,也应包含在本申请保护范围以 内,并在此以引用方式包含于此。
[0091] 综上所述,本申请的一种对象处理方法与设备,通过在对象实例中附带映射标注 信息的方式来将对象实例与节点树相映射,相比于通过配置文件进行映射的方式,本申请 由于无需手动设置,故而能够更灵活的设置节点树与对象实例;同时,由于对象实例和映射 标注信息均以面向对象程序设计思想进行设计,对于研发人员来说,能够有效简化编程;还 有,本申请利用节点树的特点来查找对象实例,能有效提高查询效率。所以,本申请有效克 服了现有技术中的种种缺点而具高度产业利用价值。
[0092] 需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采 用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例 中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的 软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器, 磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例 如,作为与处理器配合从而执行各个步骤或功能的电路。
[0093] 另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被 计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。 而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通 过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行 的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括 用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序 指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或 技术方案。
[0094] 对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在 不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论 从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权 利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有 变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此 外,显然"包括" 一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多 个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来 表示名称,而并不表示任何特定的顺序。
【主权项】
1. 一种对象处理方法,包括: 获取关于对象实例的映射标注信息; 根据所述映射标注信息将所述对象实例映射至对应应用的节点树。2. 根据权利要求1所述的方法,其中,所述获取关于对象实例的映射标注信息包括: 对对象实例执行对象操作处理,并对处理后的所述对象实例添加映射标注信息。3. 根据权利要求1所述的方法,其中,所述获取关于对象实例的映射标注信息包括: 根据对象操作指令对对象实例执行对象操作处理,其中,处理后的所述对象实例包括 与所述对象操作指令相对应的映射标注信息。4. 根据权利要求1至3中任一项所述的方法,其中,该方法还包括: 通过对所述节点树匹配查询确定一个或多个被映射至所述节点树的对象实例。5. 根据权利要求1至4中任一项所述的方法,其中,所述映射标注信息包括以下至少任 一项: 类标注信息: 字段标注信息。6. 根据权利要求5所述的方法,其中,所述映射标注信息包括类标注信息; 其中,所述根据所述映射标注信息将所述对象实例映射至对应应用的节点树包括: 根据所述类标注信息将所述对象实例映射为对应应用的节点树中的节点。7. 根据权利要求5或6所述的方法,其中,所述字段标注信息还包括: 用于表述所述对象实例所对应节点的存储路径的参数;或 用于指示所述对象实例所对应节点在所述节点树中的父节点的参数。8. 根据权利要求5至7中任一项所述的方法,其中,所述字段标注信息包括以下至少任 一项: 用于将对象实例的属性持久化于对应节点路径的字段标注信息; 用于将对象实例的属性持久化于顺序节点所生成的递增数值的字段注信息; 用于将对象实例的属性映射为对应节点下的独立节点的字段标注信息。9. 根据权利要求8所述的方法,其中,所述映射标注信息包括多个所述字段标注信息, 其中,相邻的所述字段标注信息通过定界符来间隔。10. -种对象处理设备,包括: 第一装置,用于获取关于对象实例的映射标注信息; 第二装置,用于根据所述映射标注信息将所述对象实例映射至对应应用的节点树。11. 根据权利要求10所述的设备,其中,所述第一装置用于: 对对象实例执行对象操作处理,并对处理后的所述对象实例添加映射标注信息。12. 根据权利要求10所述的设备,其中,所述第一装置用于: 根据对象操作指令对对象实例执行对象操作处理,其中,处理后的所述对象实例包括 与所述对象操作指令相对应的映射标注信息。13. 根据权利要求10至12中任一项所述的设备,其中,该设备方法还包括: 第三装置,用于通过对所述节点树匹配查询确定一个或多个被映射至所述节点树的对 象实例。14. 根据权利要求10至13中任一项所述的设备,其中,所述映射标注信息包括以下至 少任一项: 类标注信息: 字段标注信息。15. 根据权利要求14所述的设备,其中,所述映射标注信息包括类标注信息; 其中,所述第二装置用于: 根据所述类标注信息将所述对象实例映射为对应应用的节点树中的节点。16. 根据权利要求15所述的设备,其中,所述字段标注信息还包括: 用于表述所述对象实例所对应节点的存储路径的参数;或 用于指示所述对象实例所对应节点在所述节点树中的父节点的参数。17. 根据权利要求14至16中任一项所述的设备,其中,所述字段标注信息包括以下至 少任一项: 用于将对象实例的属性持久化于对应节点路径的字段标注信息; 用于将对象实例的属性持久化于顺序节点所生成的递增数值的字段标注信息; 用于将对象实例的属性映射为对应节点下的独立节点的字段标注信息。18. 根据权利要求17所述的设备,其中,所述映射标注信息包括多个所述字段标注信 息,其中,相邻的所述字段标注信息通过定界符来间隔。
【专利摘要】本申请的目的是提供一种对象处理方法及设备。与现有技术相比,本申请通过获取关于对象实例的映射标注信息;再根据所述映射标注信息将所述对象实例映射至对应应用的节点树。与现有技术相比,本申请通过在对象实例中附带映射标注信息的方式来将对象实例映射至与节点树相映射,以实现对象实例在树形存储结构中的持久化存储,提高了对对象实例的操作效率;同时,由于对象实例和映射标注信息均以面向对象程序设计思想进行设计,对于研发人员来说,能够有效简化编程。
【IPC分类】G06F17/30
【公开号】CN105488056
【申请号】CN201410476211
【发明人】刘杰
【申请人】阿里巴巴集团控股有限公司
【公开日】2016年4月13日
【申请日】2014年9月17日

最新回复(0)