一种基于Java反射的业务扩展方法及装置制造方法及图纸

技术编号:24995230 阅读:22 留言:0更新日期:2020-07-24 17:58
本发明专利技术提供了一种基于Java反射的业务扩展方法及装置,所述方法包括:基于大数据平台获取任一应用程序的业务扩展的基础包名;扫描所述基础包下的多个第三方类信息,为各第三方类信息对应创建所述大数据平台的计算服务器执行的业务处理任务;其中,所述业务处理任务配置有所述第三方类信息的日志路径;利用所述计算服务器根据所述业务处理任务中的日志路径获取对应第三方类信息,基于所述第三方类信息通过Java反射创建实例对象;基于所述实例对象调用业务处理逻辑执行所述业务处理任务。基于本发明专利技术实施例提供的方法,可以在大数据平台下,实现新的业务类的扩展,进而在保证系统代码稳定性的同时,提升系统的可扩展性。

【技术实现步骤摘要】
一种基于Java反射的业务扩展方法及装置
本专利技术涉及数据处理
,特别是涉及一种基于Java反射的业务扩展方法及装置。
技术介绍
对于目前使用的系统来说,当需要基于系统新增功能业务时,通常会新增更多的业务类相关自定义文件,对于新增自定义文件的各种类的类名以及实例对象名是千奇百怪的,需要有各自专有的构造函数、属性名或个性化方法名进行刻意进行调用,导致代码无法通用化,并且,先前构造好的系统无法感知后来扩展出来的业务。最终使得业务系统的代码违背了软件的设计的开闭原则,从而导致代码过于臃肿,无法维护。
技术实现思路
本专利技术提供了一种基于Java反射的业务扩展方法及装置以克服上述问题或者至少部分地解决上述问题。根据本专利技术的一个方面,提供了一种基于Java反射的业务扩展方法,应用于大数据平台,所述方法包括:基于大数据平台获取任一应用程序的业务扩展的基础包名;扫描所述基础包下的多个第三方类信息,为各第三方类信息对应创建所述大数据平台的计算服务器执行的业务处理任务;其中,所述业务处理任务配置有所述第三本文档来自技高网...

【技术保护点】
1.一种基于Java反射的业务扩展方法,应用于大数据平台,所述方法包括:/n基于大数据平台获取任一应用程序的业务扩展的基础包名;/n扫描所述基础包下的多个第三方类信息,为各第三方类信息对应创建所述大数据平台的计算服务器执行的业务处理任务;其中,所述业务处理任务配置有所述第三方类信息的日志路径;/n利用所述计算服务器根据所述业务处理任务中的日志路径获取对应第三方类信息,基于所述第三方类信息通过Java反射创建实例对象;/n基于所述实例对象调用业务处理逻辑执行所述业务处理任务。/n

【技术特征摘要】
1.一种基于Java反射的业务扩展方法,应用于大数据平台,所述方法包括:
基于大数据平台获取任一应用程序的业务扩展的基础包名;
扫描所述基础包下的多个第三方类信息,为各第三方类信息对应创建所述大数据平台的计算服务器执行的业务处理任务;其中,所述业务处理任务配置有所述第三方类信息的日志路径;
利用所述计算服务器根据所述业务处理任务中的日志路径获取对应第三方类信息,基于所述第三方类信息通过Java反射创建实例对象;
基于所述实例对象调用业务处理逻辑执行所述业务处理任务。


2.根据权利要求1所述的方法,其中,所述扫描所述基础包下的多个第三方类信息,为各第三方类信息对应创建所述大数据平台的计算服务器执行的业务处理任务,包括:
扫描所述基础包下的多个第三方类信息,将所述各第三方类信息转换为字节码列表;
基于所述字节码列表创建所述大数据平台的计算服务器执行的业务处理任务。


3.根据权利要求2所述的方法,其中,所述利用所述计算服务器根据所述业务处理任务中的日志路径获取对应第三方类信息,基于所述第三方类信息通过Java反射创建实例对象,包括:
利用所述计算服务器根据所述业务处理任务获取各第三方类信息的字节码以及业务日志;
基于所述字节码通过Java反射创建所述业务日志对应业务类名的实例对象。


4.根据权利要求3所述的方法,其中,所述利用所述计算服务器根据所述业务处理任务获取各第三方类信息的字节码以及业务日志之后,还包括:
初始化所述计算服务器的业务处理任务列表,生成包括日志路径和业务全类名字符串的元组数据;
获取所述业务日志中各行数据的日志存储路径,并从所述元组数据中获取各日志存储路径对应的业务全类名。

【专利技术属性】
技术研发人员:崔俊张歆明
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1