CN113553126A - 数据的处理方法和装置 - Google Patents

数据的处理方法和装置 Download PDF

Info

Publication number
CN113553126A
CN113553126A CN202110764113.9A CN202110764113A CN113553126A CN 113553126 A CN113553126 A CN 113553126A CN 202110764113 A CN202110764113 A CN 202110764113A CN 113553126 A CN113553126 A CN 113553126A
Authority
CN
China
Prior art keywords
completion event
target
node
service
business
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
Application number
CN202110764113.9A
Other languages
English (en)
Other versions
CN113553126B (zh
Inventor
蔡子辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202110764113.9A priority Critical patent/CN113553126B/zh
Publication of CN113553126A publication Critical patent/CN113553126A/zh
Application granted granted Critical
Publication of CN113553126B publication Critical patent/CN113553126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据的处理方法和装置。其中,该方法包括:响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点;通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。本发明解决了相关技术中,对树形数据结构中任意节点进行处理时,还需要调用相关的业务方法进行对应处理,导致数据操作与业务操作耦合度较高的技术问题。

Description

数据的处理方法和装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据的处理方法和装置。
背景技术
树形数据结构是一类重要的非线性数据结构。树形数据结构可以表示数据表之间一对多的关系。其中以树与二叉树最为常用,直观看来,树是以分支关系定义的层次结构。对树形数据结构进行数据处理时,由于存在与节点相关联的业务,因此在对树形数据结构进行处理后,还需要调用相关业务方法对相关业务进行处理。例如,删除一订单节点,则需要调用删除订单的相关业务,具体包括:删除订单详情、变更用户年度消费总额,以及被删除订单放入回收站等。
图1是相关技术中对树形数据结构进行删除处理的示意图,结合图1所示,将当前节点作为父节点,并将父节点作为参数被传入“删除方法”,删除参数节点后,同步调用业务方法进行相应处理。然后查找参数节点下的子节点,如果参数节点拥有子节点,则将子节点遍历,逐个当作参数传入“删除方法”,如果参数节点没有子节点,则方法结束。
由此可见,现有技术使用了方法递归的方式进行操作,其存在以下的缺点:对某个节点进行操作后,往往会有额外的业务流程需要操作。若操作都从删除方法内发起调用,则增加了业务的耦合程度,同时也不符合单一职责原则;且若有新的业务接入时,则还需要对“删除方法”进行修改,也不符合开闭原则。
针对相关技术中,对树形数据结构中任意节点进行处理时,还需要调用相关的业务方法进行对应处理,导致数据操作与业务操作耦合度较高的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据的处理方法和装置,以至少解决相关技术中,对树形数据结构中任意节点进行处理时,还需要调用相关的业务方法进行对应处理,导致数据操作与业务操作耦合度较高的技术问题。
根据本发明实施例的一个方面,提供了一种数据的处理方法,包括:响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点;通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。
进一步的,在接收对树形数据结构中目标节点的预设操作之前,将业务方法注册为目标完成事件的监听者,以使业务方法监听目标完成事件。
进一步的,将业务方法注册为目标完成事件的监听者,以使业务方法监听目标完成事件,包括:将目标完成事件的对象属性作为业务方法的参数传入业务方法,以将业务方法注册为目标完成事件的监听者。
进一步的,在通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务之后,基于树形数据结构的节点信息判断目标节点是否包含子节点;在目标节点包含子节点的情况下,通过所述子节点监听所述目标完成事件,并对所述子节点进行对应的处理,其中,所述子节点为所述目标完成事件的监听者;发布与子节点对应的子目标完成事件;与子节点相关联的子业务方法在监听到子目标完成事件之后,执行与子目标完成事件对应的业务。
进一步的,与通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务之后,生成业务方法的返回值,其中,返回值中携带有与目标完成事件的类型相同的新完成事件;发布新完成事件;业务方法对应的关联方法在监听到新完成事件之后,执行与新完成事件对应的业务,其中,关联方法被注册为新完成事件的监听者。
根据本发明实施例的另一方面,还提供了一种数据的处理装置,包括:发布模块,用于响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点;监听模块,用于通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。
进一步的,装置还包括:注册模块,用于在接收对树形数据结构中目标节点的预设操作之前,将业务方法注册为目标完成事件的监听者,以使业务方法监听目标完成事件。
进一步的,注册模块包括:传入子模块,用于将目标完成事件的对象属性作为业务方法的参数传入业务方法,以将业务方法注册为目标完成事件的监听者。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述数据的处理方法。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述数据的处理方法。
在本发明实施例中,响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点;通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。上述方案中,无需目标节点调用与其相关联的业务方法,而是由业务方法主动监听目标节点,从而将数据操作和业务操作进行了隔离,数据操作无需再关心下游的业务逻辑,解决了相关技术中,对树形数据结构中任意节点进行处理时,还需要调用相关的业务方法进行对应处理,导致数据操作与业务操作耦合度较高的技术问题。在加入新的业务方法的情况下,无需更改数据操作方法(即节点删除方法、节点更改方法和节点增加方法),而将新的业务方法设置为目标节点监听者即可。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是相关技术中对树形数据结构进行删除处理的示意图;
图2是根据本发明实施例的一种数据的处理方法的流程图;
图3是根据本发明实施例的一种对树形数据结构进行删除处理的示意图;
图4是根据本发明实施例的一种数据的处理装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种数据的处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本发明实施例的一种数据的处理方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点。
步骤S202,接收对树形数据结构中目标节点的预设操作,其中,树形数据结构包括多个节点,每个节点用于表征应用场景中的一个元素。
本申请实施例中的树形数据结构为Spring框架中的树形数据结构。Spring框架是Java平台的一个开源的全栈(Full-stack)应用程序框架和控制反转容器实现。该框架的一些核心功能理论上可用于任何Java应用,但Spring还为基于Java企业版平台构建的Web应用提供了大量的拓展支持。
上述树形数据结构由多个具有依赖关系的节点构成。每个节点表征应用场景中的一个元素。由于树形数据结构的应用场景不同,因此节点所表示的元素也不相同。下面举例说明:
在一种可选的实施例中,树形数据结构是智能问询平台中的数据结构,树形数据结构中的每个节点都表示一个问题,其子节点即为与该问题相关的下一级问题。例如,某个节点对应的问题是“订单是否发货”,则该节点的子节点可以是“发货的运单号是什么”、“发货的具体日期是哪一天”等。
在另一种可选的实施例中,树形数据结构是电商领域订单管理平台中的数据结构,树形数据结构中的每个节点都表示一个订单,其子节点即为与该订单相关的其他订单。例如,某个节点对应的订单是某个账户的一个订单,该订单包括多个货物,在货物所属发货仓的不同的情况下,则该节点的子节点可以是根据发仓对订单进行拆分得到的子订单。
在又一种可选的实施例中,树形数据结构是企业管理平台中的数据结构,树形数据结构中的每个节点都表示一个员工,其子节点即为该员工的下属员工。例如,某个节点对应的员工是某个部门的负责人,则该节点的子节点可以是该部门中的其他员工。
上述预设操作可以是删除节点操作、修改节点操作,或增加节点操作。
对目标节点进行的处理是与预设操作对应的处理,当预设操作为删除节点操作时,上述处理即为删除节点处理;当预设操作为修改节点操作时,上述处理即为修改节点处理;当预设操作为增加节点操作时,上述处理即为在目标节点下添加子节点。
在对目标节点进行对应的处理之后,会发布一目标完成事件,用于指示已经完成了预设操作。
Spring框架支持通过ApplicationEventPublisher发布自定义事件。以预设操作为节点删除操作为例,在一种可选的实施例中,当以目标节点作为参数传入节点删除方法并执行完删除逻辑后,可以通过ApplicationEventPublisher发布一个“节点删除完成事件”。
在ApplicationContext中的事件处理是由ApplicationEvent类和ApplicationListener接口提供的。如果一个bean实现了ApplicationListener接口并且部署到容器中,每次ApplicationEvent发布事件到ApplicationContext,继承ApplicationListener的bean就会被通知。
步骤S204,通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。
在上述方案中,与目标节点相关联的业务方法会对目标完成事件进行监听,在监听到目标完成事件时,执行与目标完成事件对应的业务。
在一种可选的实施例中,以智能问询平台为例,在该示例中,树形数据结构中的每个节点都表示一个问题,其子节点即为与该问题相关的下一级问题。当树形数据结构中的某个节点接收到删除操作时,该节点相关联的业务方法可以包括:调用算法系统同步数据、删除问题、从热门问题中移除问题以及删除问题对应的答案等;当树形数据结构中的某个节点接收到修改操作时,该节点相关联的业务方法可以包括:调用算法系统同步数据以及子问题状态同步等;当树形数据结构中的某个节点接收到增加操作时,该节点相关联的业务方法可以包括调用算法系统同步数据、将新增问题发送给对应负责人,以及调用第三方接口判断问题的答案是否出现敏感词等。
在另一种可选的实施例中,以上述电商领域订单管理平台为例,在该示例中,以预设操作为删除节点操作为例进行说明,将目标节点作为“删除方法”的参数传入删除方法对目标节点进行删除,在对目标节点删除完成后,发布一删除完成事件。与目标节点相关联的删除订单详情方法、变更年度用户消费总额方法以及回收已删除订单的方法,监听到删除完成事件后,执行对应的操作。具体的,删除订单详情方法删除目标节点所表示的订单的订单详情;变更年度用户消费总额方法根据目标节点所表示的订单的金额更改年度用户消费总额;回收已删除订单的方法将目标节点所表示的订单放入回收站。基于此,与目标节点相关的业务方法完成了与预设操作对应的业务。
在又一种可选的实施例中,以上述企业管理平台为例,树形数据结构中的每个节点都表示一个员工。在对目标节点删除完成后,发布一删除完成事件。当树形数据结构中的某个节点接收到删除操作时,该节点相关联的业务方法可以包括:从员工通讯录中删除该员工信息以及删除员工账号等;当树形数据结构中的某个节点接收到修改操作时,该节点相关联的业务方法可以包括:对员工数据库的数据进行同步等;当树形数据结构中的某个节点接收到增加操作时,该节点相关联的业务方法可以包括:在员工数据库中增加数据、在员工通讯录中删除该员工信息、新建员工账号等。
需要说明的是,由业务方法主动监听节点的完成事件,而非由节点进行调用,从而降低树形数据结构与业务方法之间的耦合,加强方法内聚,实现单一职责原则。此外,当有新的业务方法需要接入的时候,只需要新增监听者方法即可,不需要改动现有的代码,符合开闭原则,在减少bug的同时,降低了开发的难度。
由此可知,本申请上述实施例接收对树形数据结构中目标节点的预设操作,其中,树形数据结构包括多个节点,每个节点用于表征应用场景中的一个元素;响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点;通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。上述方案中,无需目标节点调用与其相关联的业务方法,而是由业务方法主动监听目标节点,从而将数据操作和业务操作进行了隔离,数据操作无需再关心下游的业务逻辑,解决了相关技术中,对树形数据结构中任意节点进行处理时,还需要调用相关的业务方法进行对应处理,导致数据操作与业务操作耦合度较高的技术问题。在加入新的业务方法的情况下,无需更改数据操作方法(即节点删除方法、节点更改方法和节点增加方法),而将新的业务方法设置为目标节点监听者即可。
作为一种可选的实施例,在接收对树形数据结构中目标节点的预设操作之前,方法还包括:将业务方法注册为目标完成事件的监听者,以使业务方法监听目标完成事件。
在一种可选的实施例中,对于整个树形数据结构,可以梳理出与每种完成事件相关联的业务方法,然后对这些业务方法进行一一注册为监听者。
例如,确定出与节点删除完成事件相关联的为业务方法集合a,与节节点修改事件相关联的为业务方法集合b,并确定出与节点增加事件相关联的为业务方法集合c;将业务方法集合a中的每个业务方法注册为删除完成事件的监听者,将业务方法集合b中的每个业务方法注册为修改完成事件的监听者,以及将业务方法集合c中的每个业务方法注册为增加完成事件的监听者。
作为一种可选的实施例,将业务方法注册为目标完成事件的监听者,以使业务方法监听目标完成事件,包括:将目标完成事件的对象属性作为业务方法的参数传入业务方法,以将业务方法注册为目标完成事件的监听者。
具体的,上述目标完成事件的对象属性用于指示目标完成事件的事件类型。允许被注册为监听者的业务方法属于被Spring容器管理的bean。在一种可选的实施例中,可以通过在公开方法(Java中class文件内的public方法)上添加@EventListener注解,同时将目标完成事件的class(对象属性)作为方法参数传入业务方法中,即可将业务方法注册为监听者,监听目标完成事件。
作为一种可选的实施例,在通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务之后,上述方法还包括:基于树形数据结构的节点信息判断目标节点是否包含子节点;在目标节点包含子节点的情况下,通过所述子节点监听所述目标完成事件,并对所述子节点进行对应的处理,其中,所述子节点为所述目标完成事件的监听者;发布与子节点对应的子目标完成事件;与子节点相关联的子业务方法在监听到子目标完成事件之后,执行与子目标完成事件对应的业务。
在上述方案中,预先将子节点设置为目标完成事件的监听者,具体可以是将每个节点设置为其父节点的目标完成事件的监听者,使得在目标节点包含子节点的情况下,其子节点也会执行与预设操作对应的处理,以发布与子节点对应的子目标完成事件。上述子目标完成事件是与目标完成事件的类型相同的事件,例如,如果目标完成事件表示目标节点的节点删除完成事件,则子目标完成事件即表示子节点的节点删除完成事件。
具体的,可以为目标节点添加一个子节点监听者方法,同样用于监听目标完成事件,当监听到目标完成事件后,开始执行目标节点是否存在子节点的判断步骤。
由于已经将业务方法注册为目标完成事件的监听者,因此在发布与子节点对应的子目标完成事件后,业务方法可以将子节点的标识作为参数执行先关业务。
仍以预设操作为节点删除操作为例,若目标节点存在子节点,则可以返回一个“子节点删除完成事件”,该事件的class类型与目标节点的“节点删除完成事件”的class类型保持一致,这样就可以实现嵌套事件的发布与监听,其中,上述“子节点删除完成事件”与“节点删除完成事件”的区别在于,“子节点删除完成事件”中包含子节点的节点id,而“节点删除完成事件”包含的是目标节点的几节点id。
类似的,与目标节点的每个子节点相关的业务方法也会监听到上述“子节点删除完成事件”,并执行对应的业务。且继续查找上述子节点的下一级子节点,并重复上述步骤,从而完成了对整个树形数据结构的操作。
若目标节点不存在子节点,则返回null即可中断嵌套事件的发布。
图3是根据本发明实施例的一种对树形数据结构进行删除处理的示意图,结合图3所示,仍以节点删除完成事件为例,首先将与节点相关联的业务方法A、业务方法B以及业务方法N(业务方法…)注册为节点删除完成事件的业务A监听者方法、业务B监听者方法以及业务N监听者方法(业务…监听方法)。
在接收到节点1删除操作后,将节点1作为参数传入节点删除方法,以删除节点1,并发布节点删除完成事件。
业务A监听者方法、业务B监听者方法以及业务N监听者方法(业务…监听方法)监听到上述节点删除完成事件,开始以节点1的节点标识作为参数执行对应的业务。
节点删除监听者方法监听到节点1的删除完成事件后,判断节点1会否存在子节点,在不存在子节点的情况下结束该流程。在存在子节点的情况下,发布与节点1的子字节(节点2)对应的节点删事件,业务A监听者方法、业务B监听者方法以及业务N监听者方法(业务…监听方法)监听到节点删除完成事件,开始以节点2的标识作为参数执行对应的业务。节点删除监听者方法监听到节点2的节点删除完成事件后,继续判断该节点2是否具有子节点,从而进行嵌套,直至判断结果为不存在子节点,则结束当前流程。
由此可知,在上述方案中,基于Spring框架的自定义事件,将预设操作对应的“节点删除”、“节点修改”或“节点增加”定义为事件并发布,“业务方法…”和“子类删除方法”监听此事件并进行相应处理,从而实现事件驱动架构。
作为一种可选的实施例,与通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务之后,上述方法还包括:生成业务方法的返回值,其中,返回值中携带有与目标完成事件的类型相同的新完成事件;发布新完成事件;业务方法对应的关联方法在监听到新完成事件之后,执行与新完成事件对应的业务,其中,关联方法被注册为新完成事件的监听者。
具体的,上述新完成事件的事件类型与目标完成事件的事件类型相同。在执行与目标完成事件对应的业务之后,还可以返回一个新完成事件,即可以发布一个新完成事件,发布该新完成事件目的在于,在当前业务方法还包括其他下游的业务方法时,可以将其他下游的业务方法注册为新完成事件的监听者,从而使得其他下游的业务方法可以在监听到新完成事件后,自动执行对应的业务。
仍以预设操作为节点删除操作为例,在删除了目标节点所表示的订单后发布节点删除完成事件,删除订单详情的业务方法监听到这一节点删除完成事件后,执行删除订单详情的业务,并发布一详情删除完成事件,通知方法作为删除订单详情的业务方法的业务方法,在监听到详情删除完成事件后,向用户发送邮件通知。
根据本发明实施例,提供了一种数据的处理装置的实施例,图4是根据本发明实施例的一种数据的处理装置的示意图,如图4所示,该装置包括:
发布模块42,用于响应于针对树形数据结构中目标节点的预设操作,对目标节点进行对应的处理,并发布对应的目标完成事件,其中,处理包括如下至少一项:删除节点、修改节点和添加节点;
监听模块44,用于通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务,其中,业务方法为与目标节点相关联的业务方法。
作为一种可选的实施例,装置还包括:注册模块,用于在接收对树形数据结构中目标节点的预设操作之前,将业务方法注册为目标完成事件的监听者,以使业务方法监听目标完成事件。
作为一种可选的实施例,注册模块包括:传入子模块,用于将目标完成事件的对象属性作为业务方法的参数传入业务方法,以将业务方法注册为目标完成事件的监听者。
作为一种可选的实施例,上述装置还包括:判断模块,用于在通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务之后,基于树形数据结构的节点信息判断目标节点是否包含子节点;第二发布模块,用于在目标节点包含子节点的情况下,发布与子节点对应的子目标完成事件;第一执行模块,用于与子节点相关联的子业务方法在监听到子目标完成事件之后,执行与子目标完成事件对应的业务。
作为一种可选的实施例,上述装置还包括:生成模块,用于与通过业务方法监听目标完成事件,并执行与目标完成事件对应的业务之后,生成业务方法的返回值,其中,返回值中携带有与目标完成事件的类型相同的新完成事件;第三发布模块,用于发布新完成事件;第二执行模块,用于业务方法对应的关联方法在监听到新完成事件之后,执行与新完成事件对应的业务,其中,关联方法被注册为新完成事件的监听者。
根据本发明实施例,提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行上述数据的处理方法。
根据本发明实施例,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述数据的处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的计算机可读存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种数据的处理方法,其特征在于,包括:
响应于针对树形数据结构中目标节点的预设操作,对所述目标节点进行对应的处理,并发布对应的目标完成事件,其中,所述处理包括如下至少一项:删除节点、修改节点和添加节点;
通过业务方法监听所述目标完成事件,并执行与所述目标完成事件对应的业务,其中,所述业务方法为与所述目标节点相关联的业务方法。
2.根据权利要求1所述的方法,其特征在于,在接收对树形数据结构中目标节点的预设操作之前,所述方法还包括:
将所述业务方法注册为所述目标完成事件的监听者,以使所述业务方法监听所述目标完成事件。
3.根据权利要求2所述的方法,其特征在于,将所述业务方法注册为所述目标完成事件的监听者,以使所述业务方法监听所述目标完成事件,包括:
将所述目标完成事件的对象属性作为所述业务方法的参数传入所述业务方法,以将所述业务方法注册为所述目标完成事件的监听者。
4.根据权利要求1所述的方法,其特征在于,在通过业务方法监听所述目标完成事件,并执行与所述目标完成事件对应的业务之后,所述方法还包括:
基于所述树形数据结构的节点信息判断所述目标节点是否包含子节点;
在所述目标节点包括所述子节点的情况下,通过所述子节点监听所述目标完成事件,并对所述子节点进行对应的处理,其中,所述子节点为所述目标完成事件的监听者;
发布与所述子节点对应的子目标完成事件;
与所述子节点相关联的子业务方法在监听到所述子目标完成事件之后,执行与所述子目标完成事件对应的业务。
5.根据权利要求1所述的方法,其特征在于,与通过业务方法监听所述目标完成事件,并执行与所述目标完成事件对应的业务之后,所述方法还包括:
生成所述业务方法的返回值,其中,所述返回值中携带有与所述目标完成事件的类型相同的新完成事件;
发布所述新完成事件;
所述业务方法对应的关联方法在监听到所述新完成事件之后,执行与所述新完成事件对应的业务,其中,所述关联方法被注册为所述新完成事件的监听者。
6.一种数据的处理装置,其特征在于,包括:
发布模块,用于响应于针对树形数据结构中目标节点的预设操作,对所述目标节点进行对应的处理,并发布对应的目标完成事件,其中,所述处理包括如下至少一项:删除节点、修改节点和添加节点;
监听模块,用于通过业务方法监听所述目标完成事件,并执行与所述目标完成事件对应的业务,其中,所述业务方法为与所述目标节点相关联的下游业务方法。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
注册模块,用于在接收对树形数据结构中目标节点的预设操作之前,将所述业务方法注册为所述目标完成事件的监听者,以使所述业务方法监听所述目标完成事件。
8.根据权利要求7所述的装置,其特征在于,所述注册模块包括:
传入子模块,用于将所述目标完成事件的对象属性作为所述业务方法的参数传入所述业务方法,以将所述业务方法注册为所述目标完成事件的监听者。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至5中任意一项所述数据的处理方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至5中任意一项所述数据的处理方法。
CN202110764113.9A 2021-07-06 2021-07-06 数据的处理方法和装置 Active CN113553126B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110764113.9A CN113553126B (zh) 2021-07-06 2021-07-06 数据的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110764113.9A CN113553126B (zh) 2021-07-06 2021-07-06 数据的处理方法和装置

Publications (2)

Publication Number Publication Date
CN113553126A true CN113553126A (zh) 2021-10-26
CN113553126B CN113553126B (zh) 2024-03-22

Family

ID=78102803

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110764113.9A Active CN113553126B (zh) 2021-07-06 2021-07-06 数据的处理方法和装置

Country Status (1)

Country Link
CN (1) CN113553126B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090112908A1 (en) * 2007-10-30 2009-04-30 Sap Ag Method and System for Generic Extraction of Business Object Data
US20100229186A1 (en) * 2009-03-05 2010-09-09 Sailesh Kumar Sathish Method, apparatus and computer program product for providing an event scheme for context models
US20140207940A1 (en) * 2013-01-23 2014-07-24 Facebook, Inc. Method and system for using a recursive event listener on a node in hierarchical data structure
US20150142501A1 (en) * 2013-11-18 2015-05-21 Nuwafin Holdings Ltd System and method for executing business services and enhancing business performance through a business process modeling notation
US20160335352A1 (en) * 2015-05-14 2016-11-17 Walleye Software, LLC Query dispatch and execution architecture
US9971826B1 (en) * 2016-09-14 2018-05-15 SyncRTC Inc. Methods and apparatus for a distributed shared memory for device synchronization
US20180357096A1 (en) * 2017-06-12 2018-12-13 Microsoft Technology Licensing, Llc Event processing using a scorable tree
WO2019025762A1 (en) * 2017-08-03 2019-02-07 Arm Limited COUNTER INTEGRITY TREE FOR MEMORY SECURITY
CN109525466A (zh) * 2019-01-03 2019-03-26 杭州云英网络科技有限公司 数据节点监听方法及装置
CN109597744A (zh) * 2018-11-16 2019-04-09 北京奇虎科技有限公司 数据异动分析方法及装置
CN110417870A (zh) * 2019-07-05 2019-11-05 北京达佳互联信息技术有限公司 配置文件管理方法、装置、设备和存储介质
CN111290854A (zh) * 2020-01-20 2020-06-16 腾讯科技(深圳)有限公司 任务管理方法、装置、系统、计算机存储介质及电子设备
CN112380473A (zh) * 2020-11-16 2021-02-19 康键信息技术(深圳)有限公司 数据采集与同步方法、装置、设备及存储介质
KR20210082396A (ko) * 2020-11-20 2021-07-05 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 트랜잭션 처리 방법, 장치, 전자 기기, 판독 가능 저장 매체 및 컴퓨터 프로그램

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090112908A1 (en) * 2007-10-30 2009-04-30 Sap Ag Method and System for Generic Extraction of Business Object Data
US20100229186A1 (en) * 2009-03-05 2010-09-09 Sailesh Kumar Sathish Method, apparatus and computer program product for providing an event scheme for context models
US20140207940A1 (en) * 2013-01-23 2014-07-24 Facebook, Inc. Method and system for using a recursive event listener on a node in hierarchical data structure
US20150142501A1 (en) * 2013-11-18 2015-05-21 Nuwafin Holdings Ltd System and method for executing business services and enhancing business performance through a business process modeling notation
US20160335352A1 (en) * 2015-05-14 2016-11-17 Walleye Software, LLC Query dispatch and execution architecture
US9971826B1 (en) * 2016-09-14 2018-05-15 SyncRTC Inc. Methods and apparatus for a distributed shared memory for device synchronization
US20180357096A1 (en) * 2017-06-12 2018-12-13 Microsoft Technology Licensing, Llc Event processing using a scorable tree
WO2019025762A1 (en) * 2017-08-03 2019-02-07 Arm Limited COUNTER INTEGRITY TREE FOR MEMORY SECURITY
CN109597744A (zh) * 2018-11-16 2019-04-09 北京奇虎科技有限公司 数据异动分析方法及装置
CN109525466A (zh) * 2019-01-03 2019-03-26 杭州云英网络科技有限公司 数据节点监听方法及装置
CN110417870A (zh) * 2019-07-05 2019-11-05 北京达佳互联信息技术有限公司 配置文件管理方法、装置、设备和存储介质
CN111290854A (zh) * 2020-01-20 2020-06-16 腾讯科技(深圳)有限公司 任务管理方法、装置、系统、计算机存储介质及电子设备
CN112380473A (zh) * 2020-11-16 2021-02-19 康键信息技术(深圳)有限公司 数据采集与同步方法、装置、设备及存储介质
KR20210082396A (ko) * 2020-11-20 2021-07-05 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 트랜잭션 처리 방법, 장치, 전자 기기, 판독 가능 저장 매체 및 컴퓨터 프로그램

Also Published As

Publication number Publication date
CN113553126B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
CN101651576B (zh) 告警信息处理方法和系统
CN106059825A (zh) 一种分布式系统及配置方法
CN111814089A (zh) 一种页面渲染的方法、装置、渲染服务器和存储介质
CN114443435A (zh) 一种面向容器微服务的性能监控告警方法及告警系统
US11238402B2 (en) Information operation
CN111949831B (zh) 一种图形数据库建立方法和装置、可读存储介质
CN113220431A (zh) 跨云的分布式数据任务调度方法、设备及存储介质
CN112988123B (zh) 面向ddd的软件设计方法及系统
JP2002259643A (ja) ビジネスプロセス制御プログラム
CN112418794A (zh) 一种业务流转的方法及装置
CN105100002B (zh) 属性的操作方法及装置
CN114328029B (zh) 一种应用资源的备份方法、装置、电子设备及存储介质
CN111581183A (zh) 一种基于数据模型进行数据迁移方法及装置
CN109117152B (zh) 服务生成系统及方法
CN102316128A (zh) 一种用于生成网络服务的方法及装置
US11120513B2 (en) Capital chain information traceability method, system, server and readable storage medium
CN113553126A (zh) 数据的处理方法和装置
CN110532457B (zh) 一种获取网络段id方法及系统
CN112035156A (zh) 一种电商平台对接装置、方法、设备及介质
CN101820354A (zh) 基于tnds对象的配置方法、终端设备及服务器
CN101005396B (zh) 一种网格环境下支持网格资源动态集成和协作的方法
CN109918147B (zh) OpenStack下驱动的扩展方法、装置、电子设备
CN111885206A (zh) 一种支持多电商平台并向指定环境推送数据的云平台
CN114637502B (zh) 一种业务功能包的灵活组装的实现方法及系统
CN115866029B (zh) 微服务下线处理方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant