CN111105289B - 一种基于aop方式的客户端订单取消判断方法及装置 - Google Patents

一种基于aop方式的客户端订单取消判断方法及装置 Download PDF

Info

Publication number
CN111105289B
CN111105289B CN201911157204.5A CN201911157204A CN111105289B CN 111105289 B CN111105289 B CN 111105289B CN 201911157204 A CN201911157204 A CN 201911157204A CN 111105289 B CN111105289 B CN 111105289B
Authority
CN
China
Prior art keywords
mark
cancellation
order
aop
class
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.)
Active
Application number
CN201911157204.5A
Other languages
English (en)
Other versions
CN111105289A (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.)
Beijing Yunshan Information Technology Co ltd
Original Assignee
Beijing Yunshan Information Technology 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 Beijing Yunshan Information Technology Co ltd filed Critical Beijing Yunshan Information Technology Co ltd
Priority to CN201911157204.5A priority Critical patent/CN111105289B/zh
Publication of CN111105289A publication Critical patent/CN111105289A/zh
Application granted granted Critical
Publication of CN111105289B publication Critical patent/CN111105289B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • 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/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • 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

Abstract

本申请提供了一种基于aop方式的客户端订单取消判断方法及系统,所述方法包括对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记;若存在标记,则将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消。本申请针对各个涉及到订单取消的生产系统,采用灵活的位置标记方式,基于aop实现机制,实现了订单取消判断的统一处理,减少了代码的重复开发,具有易于升级以及提高系统稳定性的优点。

Description

一种基于aop方式的客户端订单取消判断方法及装置
技术领域
本申请属于物流订单处理技术领域,特别涉及一种基于aop方式的客户端订单取消判断方法及装置。
背景技术
物流的生产环节涉及到仓配运执行系统,而每个执行系统又涉及到众多环节,这些环节的实现散落在不同的研发部门或小组,当这些环节在生产时,要判断这个订单是否已经被用户取消、以及回传在某个环节的取消状态时,就存在如下问题:
1、各个组的开发人员不一致;
2、各开发人员的实现方式不一致;
3、各自的代码质量也参差不齐;
4、若是需要修改其取消回传逻辑等,需要各个部门都得改,这样导致非常大的联调、测试、上线等工作,资源浪费非常大。
发明内容
为了解决上述技术问题至少之一,本申请提供了一种基于aop方式的客户端订单取消判断方法及装置,为电商物流企业其下多个业务执行系统提供一种高效快速的订单取消判断和状态回传的方法。
本申请的第一个方面,一种基于aop方式的客户端订单取消判断方法,包括:
对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记,所述标记为事先标注在需要进行订单取消判断的业务方法之前;以及若存在标记,则将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消,对被取消的订单,跳过紧挨该注解的业务方法,若不存在注解或对应订单未被取消,则所述方法能够被执行。
优选的是,所述标记包括基于注解式的标记或基于配置式的标记。
优选的是,检查Java虚拟机已经加载的每一个方法是否有标记包括:
基于Java的类字节码操作函数传入遍历方法,在该遍历方法中实现对Java虚拟机已经加载的每一个类中的每一个方法的遍历及检查。
优选的是,在获取到对应订单被取消后,进一步包括:
通过状态回传接口,将所述订单号、及所述方法对应的sku号、取消动作的业务环节及取消结果回传服务器。
本申请第二方面,一种基于aop方式的客户端订单取消判断装置,包括:
标记检测模块,用于对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记,所述标记为事先标注在需要进行订单取消判断的业务方法之前;以及取消判断函数织入模块,用于在存在标记时,将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消,对被取消的订单,跳过紧挨该注解的业务方法,若不存在注解或对应订单未被取消,则所述方法能够被执行。
优选的是,所述标记包括基于注解式的标记或基于配置式的标记。
优选的是,所述标记检测模块包括:
预处理单元,用于基于Java的类字节码操作函数传入遍历方法,在该遍历方法中实现对Java虚拟机已经加载的每一个类中的每一个方法的遍历及检查。
优选的是,还包括:
状态回传模块,用于通过状态回传接口,将所述订单号、及所述方法对应的sku号、取消动作的业务环节及取消结果回传服务器。
本申请第三方面,一种计算机设备,包括处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序用于实现如上所述的基于aop方式的客户端订单取消判断方法。
本申请第四方面,一种可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的基于aop方式的客户端订单取消判断方法。
本发明的实施具有如下效益:
1、订单取消代码统一;
2、订单取消状态代码统一;
3、各业务执行系统不需要再开发,只需进行少量的配置;
4、由于统一处理取消,避免代码散乱到各处,增加了系统的稳定性;
5、代码复杂度显著降低;
6、代码复用性高,节省开发成本;
7、代码修改和升级方便。
附图说明
图1是本申请基于aop方式的客户端订单取消判断方法的一优选实施例的流程图。
图2是本申请基于aop方式的客户端订单取消判断方法的另一优选实施例的流程图。
图3是本申请基于aop方式的客户端订单取消判断装置的一优选实施例的架构图。
具体实施方式
为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施方式是本申请一部分实施方式,而不是全部的实施方式。下面通过参考附图描述的实施方式是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。下面结合附图对本申请的实施方式进行详细说明。
根据本申请第一方面,一种基于aop方式的客户端订单取消判断方法,如图1所示,主要包括:
步骤S1、对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记,所述标记为事先标注在需要进行订单取消判断的业务方法之前。
步骤S2、若存在标记,则将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消,对被取消的订单,跳过紧挨该注解的业务方法,若不存在注解或对应订单未被取消,则所述方法能够被执行。
在一些可选实施方式中,所述标记包括基于注解式的标记或基于配置式的标记。该实施例以基于注解式的标记为例进行说明。
注解(Annotation),也叫元数据,隶属于Java编程语言,是一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。
本申请的注解以java为例定义如下:
Figure BDA0002285121150000041
第一行:@Target(ElementType.METHOD),表明是对java类种的方法进行标注;
第二行:@Retention(RetentionPolicy.RUNTIME),表明这个注解可以保留到程序运行的时候,它会被加载进入到JVM中,所以在程序运行时可以获取到它们;
第三行:public@interface CheckOrderCancel,定义这个注解的名称为CheckOrderCancle。
第四、五行:String orderId();String sku();String processName();代表order、sku在某个被标注函数的输入参数中的真实名称,processName()代表在哪个业务环节被取消。
当某个生产系统需要在某个生产环节对应的函数代码上判断订单是否已经取消时,可以在这个函数上打上该标记,即步骤S1中的所述标记为事先标注在需要进行订单取消判断的业务方法之前,举例,一个仓库管理系统,有一个环节叫做拣货,它的主要作用是根据某个订单到指定的货架上取出一定数量的商品,而当这个订单被用户取消后,显然就不需要进行进行拣货了,所以需要在拣货前帮助仓库操作人员判断以下该订单是否被取消,此时,在拣货方法picking的上一行中增加CheckOrderCancle这个注解,如下所示:
@CheckOrderCancel(orderId=”orderId”,sku=“skuid”,processName=“分拣”)
Public bool picking(OrderInfo orderinfo){
拣货代码
}
步骤S1中,检查Java虚拟机已经加载的每一个方法是否有标记包括:基于Java的类字节码操作函数传入遍历方法,在该遍历方法中实现对Java虚拟机已经加载的每一个类中的每一个方法的遍历及检查。
首先说明的是,该方法主要是针对应用在JVM中的目标代码进行处理,JVM是JavaVirtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
其次,类字节码操作函数是指Instrumentation,即java.lang.instrument是JavaSE 5的新特性,使用Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在JVM上的程序,甚至能够替换和修改某些类的定义,本发明主要就是利用它在特定注解过的函数上增加一些跟取消判断有关的公用代码。
ASM是一个Java字节码操控框架。它能够以二进制形式修改已有类或者动态生成类。ASM可以直接产生二进制class文件,也可以在类被加载入Java虚拟机之前动态改变类行为。ASM从类文件中读入信息后,能够改变类行为,分析类信息,甚至能够根据用户要求生成新类。
Java字节码(Byte-code)是Java虚拟机执行的一种虚拟指令格式。
另外需要引进Premain()函数,顾名思义它代表着将在主程序的main方法之前运行,一般可用以在主程序执行前,进行一系列的准备工作,在本发明中就是在类加载后对类中的指定函数增加一些公用的代码,例如取消查询,取消状态返回等。
基于上述功能模块,本申请步骤S1得以实现,参考图2,具体包括:
P1、创建一个类,在里面实现java要求的一个premain()函数;函数的入参有一个重要的类叫做Instrumentation,它是java的一个重要的类,其一个重要的作用是可以对java的类字节码进行操作;
P2、在premain函数中给instrumentation类传入一个自定的类文件转换类,该转换类实现了java的接口:ClassFileTransformer,;
P3、在该转换类中遍历jvm已经加载的每一个类;
P4、遍历该类上的每一个方法。
步骤S2中若存在标记,则将所述标记绑定的取消判断函数织入所述标记处,仍以上述的名为CheckOrderCancel注解为例,事先定义好取消判断函数,例如包括:
调用远程指定的订单查询接口;在这个调用接口中传入订单号;远程服务从自身的订单取消表中检查是否含有该订单;如是有,则返回true,否则返回false;结束。
伪代码如下:
Figure BDA0002285121150000061
调用远程服务失败后的错误处理,例如:
错误日志处理;
函数返回
}
上面代码中主要作用就是判断订单是否被取消的,它是公用的,可以用@CheckOrderCancel在程序运行中统一处理,不用每个开发都重新写一遍。
在一些可选实施方式中,在获取到对应订单被取消后,进一步包括:
通过状态回传接口,将所述订单号、及所述方法对应的sku号、取消动作的业务环节及取消结果回传服务器。具体包括:
调用远程指定的状态回传接口;在这个调用接口中传入订单号、sku号、上报取消动作的业务环节、取消结果;远程服务记录该结果;若是结果记录正确,则返回true;若是记录失败,则返回false;状态回传函数判断返回结果,若是为false则会进行重试;若是true则结束本函数。
上述织入取消判断函数及回传函数可以继续参考图2的后半部分,示意性说明如下:
P5、检查该方法上是否有名为CheckOrderCancel的注解,没有则检查下一个方法(即重复P5~P6步骤);
P6、若是有则,在这个方法前面织入上面第二部分的订单取消判断函数,
P7、并判断若是该函数返回值为true,则说明订单已经被取消,这个类的方法(实际代表的是具体生产系统的某一个业务处理环节)就不要被调用了;
P8、同时还会再调用第二部分中的状态回传函数,告诉取消中心,该订单在这个业务上被终结了;
P9、若是函数返回值为false,则表明该订单没有被取消,还要继续调用原来的业务环节对应的方法;
P10、判断该类中还有其它方法没有检查的?若有则重复步骤P5~P10;
P11、判断是否还有别的类还没有遍历,若是有则重复P4~P11;
P12、若是没有,则表明所有的类及其下面的所有方法都被检查过了,结束本流程。
本申请中,采用基于配置的标记方式,例如可以在配置文件中配置每个主要标注的信息,包括类名、类方法、入参中的订单id字段名称、skuid字段名称、业务处理环节名称,即与注解中的那3个参数对应。
本申请基于aop的实现方式有多种方式,例如基于jdk的动态代理,基于springaop、基于javassist等,Javassist是一个开源的分析、编辑和创建Java字节码的类库,除了上述所述的采用javassist外,也可以采用ASM来实现,若是涉及到spring的程序还可以采用spring aop来实现。
本申请针对各个涉及到订单取消的生产系统,采用灵活的位置标记方式,基于aop实现机制,实现了订单取消判断的统一处理,减少了代码的重复开发,具有易于升级以及提高系统稳定性的优点。
根据本申请第二方面,一种基于aop方式的客户端订单取消判断装置,与上述方法相对应,如图3所示,主要包括:
标记检测模块,用于对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记,所述标记为事先标注在需要进行订单取消判断的业务方法之前;以及取消判断函数织入模块,用于在存在标记时,将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消,对被取消的订单,跳过紧挨该注解的业务方法,若不存在注解或对应订单未被取消,则所述方法能够被执行。
在一些可选实施方式中,所述标记包括基于注解式的标记或基于配置式的标记。
在一些可选实施方式中,所述标记检测模块包括:
预处理单元,用于基于Java的类字节码操作函数传入遍历方法,在该遍历方法中实现对Java虚拟机已经加载的每一个类中的每一个方法的遍历及检查。
在一些可选实施方式中,还包括:
状态回传模块,用于通过状态回传接口,将所述订单号、及所述方法对应的sku号、取消动作的业务环节及取消结果回传服务器。
根据本申请第三方面,一种计算机设备,包括处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序用于实现如上所述的基于aop方式的客户端订单取消判断方法。
根据本申请第四方面,一种可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的基于aop方式的客户端订单取消判断方法。
特别地,根据本申请的实施方式,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施方式包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。本申请的计算机存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
应当理解,根据本申请的实施方式,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施方式中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块或单元也可以设置在处理器中,这些模块或单元的名称在某种情况下并不构成对该模块或单元本身的限定。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种基于aop方式的客户端订单取消判断方法,其特征在于,包括:
对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记,所述标记为事先标注在需要进行订单取消判断的业务方法之前;以及
若存在标记,则将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消,对被取消的订单,跳过紧挨该标记的业务方法,若不存在标记或对应订单未被取消,则所述业务方法能够被执行。
2.如权利要求1所述的基于aop方式的客户端订单取消判断方法,其特征在于,所述标记包括基于注解式的标记或基于配置式的标记。
3.如权利要求1所述的基于aop方式的客户端订单取消判断方法,其特征在于,检查Java虚拟机已经加载的每一个类中的每一个方法起始位置的前一行是否有标记包括:
基于Java的类字节码操作函数传入遍历方法,在该遍历方法中实现对Java虚拟机已经加载的每一个类中的每一个方法的遍历及检查。
4.如权利要求1所述的基于aop方式的客户端订单取消判断方法,其特征在于,在获取到对应订单被取消后,进一步包括:
通过状态回传接口,将订单号、及所述业务方法对应的sku号、取消动作的业务环节及取消结果回传服务器。
5.一种基于aop方式的客户端订单取消判断装置,其特征在于,包括:
标记检测模块,用于对Java虚拟机已经加载的每一个类中的每一个方法,检查所述方法起始位置的前一行是否有标记,所述标记为事先标注在需要进行订单取消判断的业务方法之前;以及
取消判断函数织入模块,用于在存在标记时,将所述标记绑定的取消判断函数织入所述标记处,在所述取消判断函数中,调用远程访问接口,获取对应订单是否被取消,对被取消的订单,跳过紧挨该标记的业务方法,若不存在标记或对应订单未被取消,则所述业务方法能够被执行。
6.如权利要求5所述的基于aop方式的客户端订单取消判断装置,其特征在于,所述标记包括基于注解式的标记或基于配置式的标记。
7.如权利要求5所述的基于aop方式的客户端订单取消判断装置,其特征在于,所述标记检测模块包括:
预处理单元,用于基于Java的类字节码操作函数传入遍历方法,在该遍历方法中实现对Java虚拟机已经加载的每一个类中的每一个方法的遍历及检查。
8.如权利要求5所述的基于aop方式的客户端订单取消判断装置,其特征在于,还包括:
状态回传模块,用于通过状态回传接口,将订单号、及所述业务方法对应的sku号、取消动作的业务环节及取消结果回传服务器。
9.一种计算机设备,其特征在于,包括处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序用于实现如权利要求1-4任一项所述的基于aop方式的客户端订单取消判断方法。
10.一种可读存储介质,所述可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时用于实现如权利要求1-4任一项所述的基于aop方式的客户端订单取消判断方法。
CN201911157204.5A 2019-11-22 2019-11-22 一种基于aop方式的客户端订单取消判断方法及装置 Active CN111105289B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911157204.5A CN111105289B (zh) 2019-11-22 2019-11-22 一种基于aop方式的客户端订单取消判断方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911157204.5A CN111105289B (zh) 2019-11-22 2019-11-22 一种基于aop方式的客户端订单取消判断方法及装置

Publications (2)

Publication Number Publication Date
CN111105289A CN111105289A (zh) 2020-05-05
CN111105289B true CN111105289B (zh) 2023-05-05

Family

ID=70421373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911157204.5A Active CN111105289B (zh) 2019-11-22 2019-11-22 一种基于aop方式的客户端订单取消判断方法及装置

Country Status (1)

Country Link
CN (1) CN111105289B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190576A (zh) * 2021-06-01 2021-07-30 京东科技控股股份有限公司 数据处理方法、装置、计算机设备和可读存储介质
CN116644425B (zh) * 2022-04-02 2024-02-20 港珠澳大桥管理局 基于Javaagent的Web漏洞即时阻断方法、装置、设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000020962A2 (en) * 1998-10-02 2000-04-13 International Business Machines Corporation Conversational computing via conversational virtual machine
US8606877B2 (en) * 2008-05-01 2013-12-10 Tibco Software Inc. Java virtual machine having integrated transaction management system
US8407723B2 (en) * 2009-10-08 2013-03-26 Tibco Software, Inc. JAVA virtual machine having integrated transaction management system and facility to query managed objects

Also Published As

Publication number Publication date
CN111105289A (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
CN110096338B (zh) 智能合约执行方法、装置、设备及介质
US9715593B2 (en) Software vulnerabilities detection system and methods
EP2386955B1 (en) Detection of method calls to streamline diagnosis of custom code through dynamic instrumentation
CN103069385B (zh) 用于动态加载基于图的计算的系统和方法
CN111045751B (zh) 多服务配置链式处理方法及装置
Robillard et al. Analyzing exception flow in Java programs
EP2386951A1 (en) Failsafe mechanism for dynamic instrumentation of software using callbacks
CN110603527B (zh) 用于服务器侧生产代码的条件调试的方法、系统和设备
US7512938B2 (en) Typed intermediate representation for object-oriented languages
US10466985B2 (en) Hybrid deoptimization mechanism for class hierarchy analysis
CN111967017B (zh) 生成依赖关系的方法、装置、终端设备及存储介质
CN111105289B (zh) 一种基于aop方式的客户端订单取消判断方法及装置
CN110673837B (zh) 代码修复方法及装置、电子设备、计算机可读存储介质
Giachino et al. Deadlock analysis of concurrent objects: theory and practice
WO2012052215A1 (en) Software development
CN114138281A (zh) 软件工程的编译方法、装置、设备及介质
WO2023035751A1 (zh) 移动端应用的智能混淆
CN105849698A (zh) 动态编程中的执行防护
CN109388568B (zh) 代码测试方法和装置
CN111352631A (zh) 一种接口兼容性检测方法及装置
CN111562942A (zh) 基于Gitlab的移动APP持续集成装置和方法
US9898268B2 (en) Enhanced local commoning
CN111045891B (zh) 基于java多线程的监控方法、装置、设备以及存储介质
CN113504904A (zh) 用户定义函数实现方法、装置、计算机设备和存储介质
CN111930478A (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
TA01 Transfer of patent application right

Effective date of registration: 20211018

Address after: No. 303, floor 3, No. 1, District 5, anzhen Xili, Chaoyang District, Beijing 100029

Applicant after: BEIJING YUNSHAN INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 402, floor 4, No. 1, District 5, anzhen Xili, Chaoyang District, Beijing 100029

Applicant before: Beijing Meixian Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant