CN115878097A - 一种创建定时任务的方法及系统 - Google Patents
一种创建定时任务的方法及系统 Download PDFInfo
- Publication number
- CN115878097A CN115878097A CN202310194470.5A CN202310194470A CN115878097A CN 115878097 A CN115878097 A CN 115878097A CN 202310194470 A CN202310194470 A CN 202310194470A CN 115878097 A CN115878097 A CN 115878097A
- Authority
- CN
- China
- Prior art keywords
- task
- creating
- timed
- annotated
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 134
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 10
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 7
- 244000046052 Phaseolus vulgaris Species 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种创建定时任务的方法及系统,方法包括如下步骤:创建自定义注解类,并根据所述自定义注解类与待注解方法获取已注解方法;在分布式系统中创建定时任务注册类;在所述定时任务注册类中创建或获取任务执行器;根据所述任务执行器和所述已注解方法,创建定时任务。该方法逻辑清晰,安全、有效、可靠且操作简便,能有效的解决在每个环境重复添加定时任务,且应用切换环境时手动创建任务从而造成降低工作效率以及系统业务的故障率升高的问题。该系统具有相同的有益效果。
Description
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种创建定时任务的方法及系统。
背景技术
随着互联网技术的发展,各类基础技术迭代也在不断更新,分布式系统技术变得尤为重要。目前,常见的分布式系统有xxl-job等,对应程序开发多使用传统的Java系统框架。
在现有技术中的系统业务中经常需要用xxl-job(分布式系统)来对一些业务功能进行处理,如定时处理失败数据等。
但在系统业务日常开发流程中时常需要切换环境,每个环境都部署了不同的xxl-job,数据都是隔离的,所以每一次新开发的功能需要在每个环境都要添加定时任务,这样导致会有很多重复的工作,而且如果有时候如果开发人员忘记了为某个环境添加定时任务就会对线上功能产生不必要的麻烦。
现有技术中的xxl-job无法解决上述问题,并且在切换环境时会导致任务需要手动创建,亦或者导致任务创建过晚而使得业务功能出现相应的问题,进而降低工作效率以及造成系统业务的故障率升高。
因此,提供一种在多种环境下适用的,可以有效解决应用的环境切换导致系统业务缺失和任务需要重复手动创建的问题的创建定时任务的方法及系统是本领域技术人员亟待解决的问题。
发明内容
本发明的目的在于提供一种创建定时任务的方法及系统,该方法逻辑清晰,安全、有效、可靠且操作简便,能有效的解决在每个环境重复添加定时任务,且应用切换环境时手动创建任务从而造成降低工作效率以及系统业务的故障率升高的问题。
基于以上目的,本发明提供的技术方案如下:
一种创建定时任务的方法,包括如下步骤:
创建自定义注解类,并根据所述自定义注解类与待注解方法获取已注解方法;
在分布式系统中创建定时任务注册类;
在所述定时任务注册类中创建或获取任务执行器;
根据所述任务执行器和所述已注解方法,创建定时任务。
优选地,所述在所述定时任务注册类中创建或获取任务执行器,包括如下步骤:
在所述定时任务注册类中查询是否存在所述任务执行器;
若否,则在所述分布式系统中获取已预设的配置文件;
根据所述已预设的配置文件在所述定时任务注册类中创建所述任务执行器。
优选地,所述在所述定时任务注册类中创建或获取任务执行器,还包括如下步骤:
在所述定时任务注册类中查询是否存在所述任务执行器;
若是,则在所述定时任务注册类中初始化已存在的任务执行器,以获取所述任务执行器。
优选地,所述根据所述任务执行器和所述已注解方法,创建定时任务,包括如下步骤:
在所述任务执行器中创建动态定时任务;
根据预设规则在所述动态定时任务中获取定时任务参数;
根据所述定时任务参数判断是否存在所述已注解方法;
若是,则判断所述动态定时任务中是否存在与所述已注解方法相对应的定时任务;
若不存在,则在所述任务执行器中创建与所述已注解方法相对应的定时任务。
优选地,所述根据预设规则在所述动态定时任务中获取定时任务参数,包括如下步骤:
根据预设工具在所述动态定时任务中获取对象数组数据;
循环所述对象数据数据,以获取类的所有方法信息数据;
其中,所述定时任务参数具体为:类的所有方法信息数据。
优选地,所述根据所述定时任务参数判断是否存在所述已注解方法,具体为:
循环所述类的所有方法信息数据;
判断在执行循环的所有方法中是否存在所述已注解方法。
优选地,所述若是,则判断所述动态定时任务中是否存在与所述已注解方法相对应的定时任务,还包括:
若存在,则在所述任务执行器中更新与所述已注解方法相对应的定时任务。
一种创建定时任务的系统,包括:第一创建模块、注解模块、第二创建模块、获取模块和第三创建模块;
所述第一创建模块,用于创建自定义注解类;
所述注解模块,用于根据已创建的所述自定义注解类对待注解方法进行注解;
所述第二创建模块,用于在分布式系统中创建定时任务注册类;
所述获取模块,用于在定时任务注册类中创建或获取任务执行器;
所述第三创建模块,用于根据任务执行器和已注解方法,创建定时任务。
本发明提供了一种创建定时任务的方法,是通过对方法进行注解,同时在分布式系统中创建相应的定时任务注册类;进而在定时任务注册类中创建或获取任务执行器;获取任务执行器后,根据已注解方法,创建与已注解方法相对应的定时任务。
工作过程中,通过现有程序语言的注解模式创建自定义注解类,并对需要进行定时任务的方法进行注解得到已注解方法;同时在分布式系统中创建定时任务注册类;在定时任务注册类中创建或获取任务执行器以创建定时任务;根据已获取的任务执行器与已注解方法(即注解后的标记)把需要创建定时任务的方法进行定时任务的创建。
本方法采用了程序语言结合分布式系统。通过程序语言对需要创建定时任务的方法进行注解(即标记),得到已注解方法。并创建任务执行器,结合已注解方法,创建与已注解方法想对应的定时任务。相比于现有技术,本方法由于已对方法进行了注解,无论切换任何环境都可以根据自定义注解类找到与之对应的方法;同时在分布式任务系统中创建定时任务注册类,进而在其中获取任务执行器;通过任务执行器和已注解方法,实现自动注册定时任务,从而解决在每个环境重复添加定时任务,以及应用的环境切换导致系统业务缺失和任务需要重复手动创建的问题。
本发明还提供了一种创建定时任务的系统,该系统与创建定时任务的方法解决相同的技术问题,属于相同的技术构思,因此理应具有相同的有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种创建定时任务的方法的流程图;
图2为本发明实施例提供的步骤S3的流程图;
图3为本发明实施例提供的步骤S3的另一种流程图;
图4为本发明实施例提供的步骤S4的流程图;
图5为本发明实施例提供的步骤C2的流程图;
图6为本发明实施例提供的步骤C3的流程图;
图7为本发明实施例提供的一种创建定时任务的系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例采用递进的方式撰写。
本发明实施例提供了一种创建定时任务的方法及系统。主要解决现有技术中,在每个环境重复添加定时任务,以及应用的环境切换导致系统业务缺失和任务需要重复手动创建的技术问题。
如图1所示,一种创建定时任务的方法,包括如下步骤:
S1.创建自定义注解类,并根据自定义注解类与待注解方法获取已注解方法;
S2.在分布式系统中创建定时任务注册类;
S3.在定时任务注册类中创建或获取任务执行器;
S4.根据任务执行器和已注解方法,创建定时任务。
需要说明的是,在实际运用过程中,根据不同的使用需求或所需的效果,各方法步骤有具体的使用细节,各步骤所采用的具体设备或检测部件可以根据实际需要进行选择,具体的程序语言为java、c、Python等,而分布式系统可选择现有技术中的Xxl-job。在本实施例中,选择程序语言java为例,说明本方法的具体实施过程。
还需要说明的是,Annotation(注解)是JDK1.5及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。注解是以‘@注解名’在代码中存在的,根据注解参数的个数,可以将注解分为:标记注解、单值注解、完整注解三类。它们都不会直接影响到程序的语义,只是作为注解(标识)存在,可以通过反射机制编程实现对这些元数据(用来描述数据的数据)的访问。另外,可以在编译时选择代码里的注解是否只存在于源代码级,或者它也能在class文件、或者运行时中出现(SOURCE/CLASS/RUNTIME);
常见的自定义注解有四种:注解用在类上面、注解用在方法上面、注解用在属性上面、注解用在参数上面;
步骤S1中,通过使用java的注解模式来定一个一个自定义注解类【A】,并将【A】使用到需要创建定时任务的java类方法上;其中,【A】具有以下字段属性:任务名称,时间表达式,运行模式等。
步骤S2中,通过使用分布式系统(Xxl-job),并在分布式系统中创建一个定时任务注册类;
步骤S3中,在定时任务注册类中获取创建定时任务的任务执行器;
步骤S4中,根据已获取的任务执行器和已注解的java类方法,创建与已注解的java类方法相对应的定时任务。
如图2所示,优选地,步骤S3,包括如下步骤:
A1.在定时任务注册类中查询是否存在任务执行器;
A2.若否,则在分布式系统中获取已预设的配置文件;
A3.根据已预设的配置文件在定时任务注册类中创建任务执行器。
步骤A1中,通过分布式系统(Xxl-job)的http接口在定时任务注册类中查询是否存在用于创建定时任务的任务执行器;
步骤A2中,若定时任务注册类不存在任务执行器,则从分布式系统中读取已预设的配置文件。其中,在配置文件内可定义需要自定义配置的数据,如xxl-job平台地址,用户名,密码,应用名称,执行器名称,是否需要自动注册;
步骤A3中,根据已预设的配置文件,在定时任务注册类中创建新的任务执行器,该任务执行器用于创建定时任务。
如图3所示,优选地,步骤S3,还包括如下步骤:
B1.在定时任务注册类中查询是否存在任务执行器;
B2.若是,则在定时任务注册类中初始化已存在的任务执行器,以获取任务执行器。
步骤B1与步骤A1相同,即:通过分布式系统(Xxl-job)的http接口在定时任务注册类中查询是否存在用于创建定时任务的任务执行器;
步骤B2中,若定时任务注册类中存在任务执行器,则对已存在的任务执行器进行初始化,以获取新的任务执行器。
在本实施例中,是通过Spring Bean的前置加载@PostConstruct方法进行初始化任务执行器的。
Spring Bean具体是指被实例的,组装的及被Spring 容器管理的Java对象,即描述Java的软件组件模型;
@PostConstruct是Java自带的注解,在方法上加该注解会在项目启动的时候执行该方法,也可以理解为在spring容器初始化的时候执行该方法,即用于实现Bean初始化之前的自定义操作;
如果想在生成对象时完成某些初始化操作,而偏偏这些初始化操作又依赖于依赖注入,那么久无法在构造函数中实现。为此,可以使用@PostConstruct注解一个方法来完成初始化,@PostConstruct注解的方法将会在依赖注入完成后被自动调用。
如图4所示,优选地,步骤S4,包括如下步骤:
C1.在任务执行器中创建动态定时任务;
C2.根据预设规则在动态定时任务中获取定时任务参数;
C3.根据定时任务参数判断是否存在已注解方法;
C4.若是,则判断动态定时任务中是否存在与已注解方法相对应的定时任务;
C5.若不存在,则在任务执行器中创建与已注解方法相对应的定时任务。
步骤C1中,具体是通过Spring Bean的生命周期过程中的Bean实例化之前方法进行动态创建定时任务;
步骤C2中,从动态定时任务中获取相应的定时任务参数;
步骤C3中,根据定时任务参数,判断其中是否存在已注解的java类方法;
步骤C4中,若存在,则判断动态定时任务中是否存在与已注解的java类方法相对应的定时任务;
步骤C5中,若未在动态定时任务中发现已注解的java类方法存在,则在任务执行器中创建与已注解的java类方法相对应的定时任务。
如图5所示,优选地,步骤C2,包括如下步骤:
D1.根据预设工具在动态定时任务中获取对象数组数据;
D2.循环对象数据数据,以获取类的所有方法信息数据;
其中,定时任务参数具体为:类的所有方法信息数据。
步骤D1中,具体是通过Spring ioc容器的按类型查询获取Bean对象数组数据;
需要说明的是,Spring 容器会自动完成@bean对象的实例化;
IOC (Inversion Of Control,控制倒转),是spring的核心,贯穿始终,所谓IOC ,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。所有的类都会在spring容器中登记,告诉spring你是个什么,你需要什么,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你的东西。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被spring控制,所以这叫控制反转。
IoC模式,系统中通过引入实现了IoC模式的IoC容器,即可由IoC容器来管理对象的生命周期、依赖关系等,从而使得应用程序的配置和依赖性规范与实际的应用程序代码分开。其中一个特点就是通过文本的配置文件进行应用程序组件间相互关系的配置,而不用重新修改并编译具体的代码。
步骤D2中,具体是通过循环Bean对象数组数据获取类的所有方法信息数据。
如图6所示,优选地,步骤C3,具体为:
E1.循环类的所有方法信息数据;
E2.判断在执行循环的所有方法中是否存在已注解方法。
步骤E1与E2中,具体是通过循环类的所有方法信息数据判断执行循环的所有方法中是否存在标记了注解【A】的方法。
优选地,步骤C4,还包括:
若存在,则在任务执行器中更新与已注解方法相对应的定时任务。
步骤C4还包括,若在循环类的所有方法信息数据存在标记了注解【A】的方法,则在任务执行器中更新与已注解方法相对应的定时任务。
如图7所示,一种创建定时任务的系统,包括:第一创建模块、注解模块、第二创建模块、获取模块和第三创建模块
第一创建模块,用于创建自定义注解类;
注解模块,用于根据已创建的自定义注解类对待注解方法进行注解;
第二创建模块,用于在分布式系统中创建定时任务注册类;
获取模块,用于在定时任务注册类中创建或获取任务执行器;
第三创建模块,用于根据任务执行器和已注解方法,创建定时任务。
本发明还公开了一种创建定时任务的系统,该系统包括第一创建模块、注解模块、第二创建模块、获取模块和第三创建模块;工作过程中,第一创建模块创建自定义注解类,并发送至注解模块;注解模块根据自定义注解类对待注解方法进行注解,获取已注解方法,并将已注解方法发送至第三创建模块中;第二创建模块,在分布式系统中创建定时任务注册类,并将定时任务注册类发送至获取模块;获取模块,在定时任务注册类中创建或获取任务执行器,并将任务执行器发送至第三创建模块中;第三创建模块根据任务执行器和已注解方法,创建定时任务。
在本申请所提供的实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
另外,在本发明各实施例中的各功能模块可以全部集成在一个处理器中,也可以是各模块分别单独作为一个器件,也可以两个或两个以上模块集成在一个器件中;本发明各实施例中的各功能模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令及相关的硬件来完成,前述的程序指令可以存储于计算机可读取存储介质中,该程序指令在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
应当理解,本申请中如若使用了“系统”、“装置”、“单元”和/或“模块”,仅是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
本申请中如若使用了流程图,则该流程图是用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
以上对本发明所提供的一种创建定时任务的方法及系统进行了详细介绍。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种创建定时任务的方法,其特征在于,包括如下步骤:
创建自定义注解类,并根据所述自定义注解类与待注解方法获取已注解方法;
在分布式系统中创建定时任务注册类;
在所述定时任务注册类中创建或获取任务执行器;
根据所述任务执行器和所述已注解方法,创建定时任务;
所述根据所述任务执行器和所述已注解方法,创建定时任务,包括如下步骤:
在所述任务执行器中创建动态定时任务;
根据预设规则在所述动态定时任务中获取定时任务参数;
根据所述定时任务参数判断是否存在所述已注解方法;
若是,则判断所述动态定时任务中是否存在与所述已注解方法相对应的定时任务;
若不存在,则在所述任务执行器中创建与所述已注解方法相对应的定时任务。
2.如权利要求1所述的创建定时任务的方法,其特征在于,所述在所述定时任务注册类中创建或获取任务执行器,包括如下步骤:
在所述定时任务注册类中查询是否存在所述任务执行器;
若否,则在所述分布式系统中获取已预设的配置文件;
根据所述已预设的配置文件在所述定时任务注册类中创建所述任务执行器。
3.如权利要求1所述的创建定时任务的方法,其特征在于,所述在所述定时任务注册类中创建或获取任务执行器,还包括如下步骤:
在所述定时任务注册类中查询是否存在所述任务执行器;
若是,则在所述定时任务注册类中初始化已存在的任务执行器,以获取所述任务执行器。
4.如权利要求1所述的创建定时任务的方法,其特征在于,所述根据预设规则在所述动态定时任务中获取定时任务参数,包括如下步骤:
根据预设工具在所述动态定时任务中获取对象数组数据;
循环所述对象数组数据,以获取类的所有方法信息数据;
其中,所述定时任务参数具体为:类的所有方法信息数据。
5.如权利要求4所述的创建定时任务的方法,其特征在于,所述根据所述定时任务参数判断是否存在所述已注解方法,具体为:
循环所述类的所有方法信息数据;
判断在执行循环的所有方法中是否存在所述已注解方法。
6.如权利要求1所述的创建定时任务的方法,其特征在于,所述若是,则判断所述动态定时任务中是否存在与所述已注解方法相对应的定时任务,还包括:
若存在,则在所述任务执行器中更新与所述已注解方法相对应的定时任务。
7.一种创建定时任务的系统,其特征在于,包括:第一创建模块、注解模块、第二创建模块、获取模块和第三创建模块;
所述第一创建模块,用于创建自定义注解类;
所述注解模块,用于根据已创建的所述自定义注解类对待注解方法进行注解;
所述第二创建模块,用于在分布式系统中创建定时任务注册类;
所述获取模块,用于在定时任务注册类中创建或获取任务执行器;
所述第三创建模块,用于根据任务执行器和已注解方法,创建定时任务;
所述根据所述任务执行器和所述已注解方法,创建定时任务,具体为:
在所述任务执行器中创建动态定时任务,根据预设规则在所述动态定时任务中获取定时任务参数,根据所述定时任务参数判断是否存在所述已注解方法,若是,则判断所述动态定时任务中是否存在与所述已注解方法相对应的定时任务,若不存在,则在所述任务执行器中创建与所述已注解方法相对应的定时任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310194470.5A CN115878097B (zh) | 2023-03-03 | 2023-03-03 | 一种创建定时任务的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310194470.5A CN115878097B (zh) | 2023-03-03 | 2023-03-03 | 一种创建定时任务的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115878097A true CN115878097A (zh) | 2023-03-31 |
CN115878097B CN115878097B (zh) | 2023-05-16 |
Family
ID=85761857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310194470.5A Active CN115878097B (zh) | 2023-03-03 | 2023-03-03 | 一种创建定时任务的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115878097B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795426A (zh) * | 2023-08-21 | 2023-09-22 | 智慧眼科技股份有限公司 | 一种数据处理方法及系统 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110004833A1 (en) * | 2009-07-02 | 2011-01-06 | Robert Lang | Regulatory Task Management System and Method |
EP2963546A1 (en) * | 2014-03-24 | 2016-01-06 | Shenzhen Tinno Wireless Technology Co., Ltd | Method for achieving software development transaction and electronic device |
CN106648587A (zh) * | 2016-09-28 | 2017-05-10 | 福州宇嘉软件科技有限公司 | 一种基于注解的Web应用代码生成方法 |
US9684543B1 (en) * | 2016-02-05 | 2017-06-20 | Sas Institute Inc. | Distributed data set storage, retrieval and analysis |
CN108399095A (zh) * | 2017-02-04 | 2018-08-14 | 北京京东尚科信息技术有限公司 | 支持动态管理定时任务的方法、系统、设备和存储介质 |
CN109857529A (zh) * | 2019-01-15 | 2019-06-07 | 深圳业拓讯通信科技有限公司 | 一种动态加载及调度定时任务的方法及装置 |
US20200089524A1 (en) * | 2018-09-17 | 2020-03-19 | Servicenow, Inc. | Wait a duration timer action and flow engine for building automated flows within a cloud based development platform |
CN111104207A (zh) * | 2018-10-29 | 2020-05-05 | 珠海横琴盛达兆业科技投资有限公司 | 一种基于SpringBoot实现动态配置定时任务的方法 |
CN111813390A (zh) * | 2020-07-20 | 2020-10-23 | 浪潮软件股份有限公司 | 一种定时器实现方法 |
WO2021068348A1 (zh) * | 2019-10-10 | 2021-04-15 | 平安科技(深圳)有限公司 | 任务部署方法、系统和存储介质 |
CN112668047A (zh) * | 2020-12-28 | 2021-04-16 | 浪潮云信息技术股份公司 | 基于定时任务的数据增量静态脱敏实现方法及系统 |
CN112835924A (zh) * | 2021-02-04 | 2021-05-25 | 北京高途云集教育科技有限公司 | 实时计算任务处理方法、装置、设备及存储介质 |
CN115061797A (zh) * | 2022-06-20 | 2022-09-16 | 广州市玄武无线科技股份有限公司 | 一种Quartz组件的调用方法及装置 |
CN115480894A (zh) * | 2022-09-13 | 2022-12-16 | 天翼安全科技有限公司 | 一种实现分布式延时任务的方法、装置及设备 |
-
2023
- 2023-03-03 CN CN202310194470.5A patent/CN115878097B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110004833A1 (en) * | 2009-07-02 | 2011-01-06 | Robert Lang | Regulatory Task Management System and Method |
EP2963546A1 (en) * | 2014-03-24 | 2016-01-06 | Shenzhen Tinno Wireless Technology Co., Ltd | Method for achieving software development transaction and electronic device |
US9684543B1 (en) * | 2016-02-05 | 2017-06-20 | Sas Institute Inc. | Distributed data set storage, retrieval and analysis |
CN106648587A (zh) * | 2016-09-28 | 2017-05-10 | 福州宇嘉软件科技有限公司 | 一种基于注解的Web应用代码生成方法 |
CN108399095A (zh) * | 2017-02-04 | 2018-08-14 | 北京京东尚科信息技术有限公司 | 支持动态管理定时任务的方法、系统、设备和存储介质 |
US20200089524A1 (en) * | 2018-09-17 | 2020-03-19 | Servicenow, Inc. | Wait a duration timer action and flow engine for building automated flows within a cloud based development platform |
CN111104207A (zh) * | 2018-10-29 | 2020-05-05 | 珠海横琴盛达兆业科技投资有限公司 | 一种基于SpringBoot实现动态配置定时任务的方法 |
CN109857529A (zh) * | 2019-01-15 | 2019-06-07 | 深圳业拓讯通信科技有限公司 | 一种动态加载及调度定时任务的方法及装置 |
WO2021068348A1 (zh) * | 2019-10-10 | 2021-04-15 | 平安科技(深圳)有限公司 | 任务部署方法、系统和存储介质 |
CN111813390A (zh) * | 2020-07-20 | 2020-10-23 | 浪潮软件股份有限公司 | 一种定时器实现方法 |
CN112668047A (zh) * | 2020-12-28 | 2021-04-16 | 浪潮云信息技术股份公司 | 基于定时任务的数据增量静态脱敏实现方法及系统 |
CN112835924A (zh) * | 2021-02-04 | 2021-05-25 | 北京高途云集教育科技有限公司 | 实时计算任务处理方法、装置、设备及存储介质 |
CN115061797A (zh) * | 2022-06-20 | 2022-09-16 | 广州市玄武无线科技股份有限公司 | 一种Quartz组件的调用方法及装置 |
CN115480894A (zh) * | 2022-09-13 | 2022-12-16 | 天翼安全科技有限公司 | 一种实现分布式延时任务的方法、装置及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795426A (zh) * | 2023-08-21 | 2023-09-22 | 智慧眼科技股份有限公司 | 一种数据处理方法及系统 |
CN116795426B (zh) * | 2023-08-21 | 2023-11-10 | 智慧眼科技股份有限公司 | 一种数据处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115878097B (zh) | 2023-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628635B (zh) | 获取参数名和局部变量名的方法、装置、设备及存储介质 | |
Constantinides et al. | Designing an aspect-oriented framework in an object-oriented environment | |
US7694272B2 (en) | Method, a language and a system for the definition and implementation of software solutions by using a visualizable computer executable modeling language | |
WO2018072493A1 (zh) | 编译方法和编译系统 | |
Li et al. | A formal semantics of UML sequence diagram | |
US8392873B2 (en) | Methods and apparatus for implementing model-based software solution development and integrated change management | |
US20240045850A1 (en) | Systems and methods for database orientation transformation | |
US8141035B2 (en) | Method for accessing internal states of objects in object oriented programming | |
Corbett et al. | Expressing checkable properties of dynamic systems: the Bandera Specification Language | |
US20100281463A1 (en) | XML based scripting framework, and methods of providing automated interactions with remote systems | |
US11579856B2 (en) | Multi-chip compatible compiling method and device | |
US20090144703A1 (en) | Method and system for versioning a software system | |
Lehmann et al. | Meta-modeling runtime models | |
WO1999046689A9 (en) | Execution of extended activity diagrams by code generation | |
Collier et al. | Reflecting on agent programming with AgentSpeak (L) | |
JP2007519105A (ja) | 自動テストスクリプトの永続性を持つ抽象テストケース表現への変換のための方法、及びシステム | |
CN102508668B (zh) | 一种基于动态栈的ejb3.0容器aop实现方法 | |
US20060225042A1 (en) | Virtual threads in business process programs | |
US20090328016A1 (en) | Generalized expression trees | |
CN107203535B (zh) | 信息查询方法及装置 | |
CN115878097A (zh) | 一种创建定时任务的方法及系统 | |
US20050268281A1 (en) | Portable annotated merge model and methods of using the same | |
CN109558121A (zh) | 接口驱动程序的开发方法、装置、设备及存储介质 | |
CN113961238A (zh) | 对象转换方法、装置及电子设备和存储介质 | |
CN111563000B (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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: No. 205, Building B1, Huigu Science and Technology Industrial Park, No. 336 Bachelor Road, Bachelor Street, Yuelu District, Changsha City, Hunan Province, 410000 Patentee after: Wisdom Eye Technology Co.,Ltd. Address before: Building 14, Phase I, Changsha Zhongdian Software Park, No. 39 Jianshan Road, Changsha High tech Development Zone, Changsha City, Hunan Province, 410205 Patentee before: Wisdom Eye Technology Co.,Ltd. |