一种实现数据可视化的代码自动化方法和装置属于软件效率工程领域。该方法包括两个部分:前端页面自动生成部分和后端数据一站式获取部分。第一部分包括:由终端设备发送代码自动化请求,拉取配置中心对应请求编号的配置;根据配置内容,通过抽象工厂初始化所需代码块列表;根据代码块的层级信息和优先级信息确定待生成页面的代码块顺序;按照顺序组合代码块,继而生成请求对应的前端页面。第二部分包括:根据前端页面发送的数据获取请求,拉取配置中心对应请求编号的配置;根据配置内容,通过抽象工厂初始化调用链路所需的节点类;通过模板方法连接各节点类的实现逻辑,继而获取数据包返回至前端页面。本发明专利技术可大幅缩短开发周期,提高开发效率。
A code automation method and device for data visualization
【技术实现步骤摘要】
一种实现数据可视化的代码自动化方法和装置
本专利技术属于软件效率工程领域,更具体的,本专利技术设计一种实现数据可视化的代码自动化方法和装置。
技术介绍
在当今的大数据时代,数据可视化便是让人们能够快速理解这些数据并对数据进行有效利用,从而分析出其中隐藏的价值信息。典型的数据可视化实现流程分为三个阶段:首先,大数据开发人员根据数据可视化的需求设计数据库,为后端查询提供数据源;然后,后端开发人员对数据源进行条件查询,将结果包装成数据包;最后,前端工程师完成数据可视化页面开发,将数据包内容呈现在可视化页面上。随着需求的增多,这种冗长的开发流程很多时候会成为影响团队开发效率的关键因素,加上其中大部分代码具有较高的相似度,重复性工作也就逐渐体现出来,降低开发效率。解决上述问题,代码自动化技术是一种有效的解决方案。代码自动化技术是一种利用程序生成代码的技术,一种专注于解放编码生产力,用程序来编程的技术。其中生成代码的原理是读取工程的领域元数据,按照一定的设计模式和领域规则,结合产生出规范的源代码。代码自动化技术与手工编写代码相比,前者大幅提高了软件的代码质量和开发人员的工作效率。但现有的代码自动化工具很难满足现今的数据可视化开发需求,生成的代码只适用于一些部分的功能,并不能贯穿整个前后端的代码模块,且普遍存在针对性不强、学习成本高的缺点。参考图3流程设计,本专利技术设计了一种根据配置自动生成前端页面、自动定制后端代码段获取数据从而实现数据可视化的方法,并根据方法实现了一种数据可视化的代码自动化装置。在此装置的基础上,数据可视化的开发工作简化为只需要大数据开发人员参与即可,大幅缩短开发周期,提高开发效率。
技术实现思路
本专利技术提供一种实现数据可视化的代码自动化方法和装置,以解决数据可视化代码开发过程中代码质量与开发效率较低的问题。本专利技术实施例的第一方面,提供了一种实现数据可视化的代码自动化方法,该方法包括两个部分:前端页面自动生成部分和后端数据一站式获取部分。前端页面自动生成部分包括:根据接收到来自客户端申请的代码自动化请求,拉取配置中心对应请求编号的配置,其中,配置中心是为开发人员提供的根据数据源进行可视化配置的Browser/Server程序;根据配置内容,通过抽象工厂初始化所需的代码块列表,其中,代码块是一个包含模板代码段、层级信息和优先级信息的类;根据代码块的层级信息和优先级信息进行排序,确定待生成页面的代码块前后顺序;按照顺序组合代码块,继而生成代码自动化请求对应的前端页面。前端页面呈现的可视化数据内容源于该方法的第二部分。后端数据一站式获取部分包括:根据自动化生成的前端页面发送的数据获取请求,拉取配置中心对应请求编号的配置;根据配置内容,通过Java反射机制实现的抽象工厂初始化调用链路所需要的节点类,其中,节点类是一个包含初始化参数和逻辑功能实现的类;通过模板方法连接各类之间的实现逻辑,继而获取对应数据获取请求的数据包,将数据包返回至前端页面。在本专利技术的一些实施例中,在接收到来自客户端申请的请求后,在拉取配置中心配置之前,方法还包括对配置中心的链接状态确定。如果获取配置中心链接异常,则触发重试机制。当重试次数达到阈值后,向应用本地配置中确定是否有相应可视化配置,有则继续流程,无则返回请求异常。在本专利技术的一些实施例中,在接收到来自客户端申请的请求,拉取配置中心相应配置之后,方法还需经过校验模块进行相应校验。校验内容包括:数据源校验、配置内容校验和安全校验。其中,数据源校验包括数据源链接状态校验和数据源表结构校验。配置内容校验包括内容正确性校验和生成路径校验。安全校验提供客户端的签名校验,确保方法只能被指定的客户端调用。在本专利技术的一些实施例中,在抽象工厂初始化代码块和节点类之前,该方法还包括:查询开发人员自定义的扩展代码块和节点类,加载至抽象工厂。在本专利技术的一些实施例中,在将确认过顺序的代码块生成为对应自动化请求的前端页面之前,该方法还包括:验证生成页面的最终路径下有无同名页面存在,有同名页面则覆盖。本专利技术实施例的第二方面,提供了一种用于实现数据可视化的代码自动化装置,该装置包括:配置中心单元,旨在为开发人员提供根据数据源进行可视化配置的功能,可视化配置包括可视化数据源、可视化类型、可视化条件参数、可视化数据字段、可视化页面生成路径;配置拉取单元,拉取配置中心单元的可视化配置,旨在为抽象工厂单元提供可视化配置参数;抽象工厂单元,根据配置拉取单元的可视化配置参数,通过Java反射机制初始化排序单元和模板方法整合单元所需的代码块和节点类;排序单元,根据抽象工厂单元初始化的代码块层级信息和优先级信息进行排序,确定将要生成页面代码的前后顺序;代码生成单元,获取排序单元确定顺序的代码块,生成代码自动化请求对应的前端页面;模板方法整合单元,通过模板方法连接各类之间的实现逻辑,执行模板方法获取对应可视化数据,将数据以数据包形式返回至前端页面。在本专利技术的一些实施例中,该装置还包括配置中心链接确定单元,被配置成:在接收到来自客户端申请的请求后,在拉取配置中心配置之前,如果获取配置中心链接异常,则触发重试机制。当重试次数达到阈值后,向应用本地配置中确定是否有相应可视化配置,有则继续流程,无则返回请求异常。在本专利技术的一些实施例中,该装置还包括校验单元,被配置成:在接收到来自客户端申请的请求,拉取配置中心相应配置之后,需经过校验单元进行相应校验。校验内容包括:数据源校验、配置内容校验和安全校验。其中,数据源校验包括数据源链接状态校验和数据源表结构校验。配置内容校验包括内容正确性校验和生成路径校验。安全校验提供客户端的签名校验,确保方法只能被指定的客户端调用。在本专利技术的一些实施例中,该装置还包括扩展类加载单元,被配置成:在抽象工厂初始化代码块和节点类之前,查询开发人员自定义的扩展代码块和节点类,加载至抽象工厂。在本专利技术的一些实施例中,该装置还包括前端页面生成验证单元,被配置成:在将确认过顺序的代码块生成为对应自动化请求的前端页面之前,验证生成页面的最终路径下有无同名页面存在,有同名页面则覆盖。本专利技术实施例的第三方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行,使得上述一个或多个处理器实现一种数据可视化的代码自动化方法中的任一上述方法。本专利技术实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,其中,当上述程序被一个或多个处理器执行时实现了一种数据可视化的代码自动化方法中的任一上述方法。专利技术效果当下的大多数代码生成工具生成的代码只适用于一些部分的功能,并不能贯穿整个前后端的代码模块,且普遍只能根据已有的生成规则生成代码,灵活性不强,扩展性有待提高。而本专利技术实施例提供的实现数据可视化的代码自动化方法和装置,通过两种不同的方式分别高效的实现了前端代码和后端代码的自动化。前端通过获取请求对应的配置中心配置,初始化所需代码块列表。之后按照层级顺序和本文档来自技高网...
【技术保护点】
1.一种实现数据可视化的代码自动化方法,其特征在于:包括两个部分:前端页面自动生成部分和后端数据一站式获取部分;/n前端页面自动生成部分包括:根据接收到来自客户端申请的代码自动化请求,拉取配置中心对应请求编号的配置,其中,配置中心是为开发人员提供的根据数据源进行可视化配置的Browser/Server程序;根据配置内容,通过抽象工厂初始化所需的代码块列表,其中,代码块是一个包含模板代码段、层级信息和优先级信息的类;根据代码块的层级信息和优先级信息进行排序,确定待生成页面的代码块前后顺序;按照顺序组合代码块,继而生成代码自动化请求对应的前端页面;/n后端数据一站式获取部分包括:根据接收到来自客户端申请的数据获取请求,拉取配置中心对应请求编号的配置;根据配置内容,通过Java反射机制实现的抽象工厂初始化调用链路所需要的节点类,其中,节点类是一个包含初始化参数和逻辑功能实现的类;通过模板方法连接各类之间的实现逻辑,继而获取对应数据获取请求的数据包,将数据包返回至前端页面。/n
【技术特征摘要】
1.一种实现数据可视化的代码自动化方法,其特征在于:包括两个部分:前端页面自动生成部分和后端数据一站式获取部分;
前端页面自动生成部分包括:根据接收到来自客户端申请的代码自动化请求,拉取配置中心对应请求编号的配置,其中,配置中心是为开发人员提供的根据数据源进行可视化配置的Browser/Server程序;根据配置内容,通过抽象工厂初始化所需的代码块列表,其中,代码块是一个包含模板代码段、层级信息和优先级信息的类;根据代码块的层级信息和优先级信息进行排序,确定待生成页面的代码块前后顺序;按照顺序组合代码块,继而生成代码自动化请求对应的前端页面;
后端数据一站式获取部分包括:根据接收到来自客户端申请的数据获取请求,拉取配置中心对应请求编号的配置;根据配置内容,通过Java反射机制实现的抽象工厂初始化调用链路所需要的节点类,其中,节点类是一个包含初始化参数和逻辑功能实现的类;通过模板方法连接各类之间的实现逻辑,继而获取对应数据获取请求的数据包,将数据包返回至前端页面。
2.根据权利要求1所述的一种实现数据可视化的代码自动化方法,其特征在于:在接收到来自客户端申请的请求后,在拉取配置中心配置之前,方法还包括对配置中心的链接状态确定;如果获取配置中心链接异常,则触发重试机制;当重试次数达到阈值后,向应用本地配置中确定是否有相应可视化配置,有则继续流程,无则返回请求异常。
3.根据权利要求1所述的一种实现数据可视化的代码自动化方法,其特征在于:在接收到来自客户端申请的请求,拉取配置中心相应配置之后,还需经过校验模块进行相应校验;校验内容包括:数据源校验、配置内容校验和安全校验;其中,数据源校验包括数据源链接状态校验和数据源表结构校验;配置内容校验包括内容正确性校验和生成路径校验;安全校验提供客户端的签名校验,确保方法只能被指定的客户端调用。
4.根据权利要求1所述的一种实现数据可视化的代码自动化方法,其特征在于:在抽象工厂初始化代码块和节点类之前,查询开发人员自定义的扩展代码块和节点类,加载至抽象工厂。
5.根据权利要求1所述的一种实现数据可视化的代码自动化方法,其特征在于:在将确认过顺序的代码块生成为对应自动化请求的前端页面之前,验证生成页面的最终路径下有无同名页面存在,有同名页面则覆盖...
【专利技术属性】
技术研发人员:刘东洋,石宇良,
申请(专利权)人:北京工业大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。