一种基于activeMq实现进度条的方法技术

技术编号:17247919 阅读:29 留言:0更新日期:2018-02-11 05:57
一种基于activeMq实现进度条的方法包括后端对待监控业务进行实时进度计算,并将待监控业务的ID及执行进度发送给前端activeMq,前端监听对应待监控业务ID的activeMq消息,并利用前端page页面的script标签及DIV标签控制和显示进度条。有益效果在于:利用本发明专利技术所述的方法,只需要编写少量的发送mq消息的数据的代码,和Div格式数据,或其他的格式的进度条,就可以实现各种漂亮的进度条了,简单实用,比起同类的进度条实现,简洁,干净,维护起来也非常轻松。

【技术实现步骤摘要】
一种基于activeMq实现进度条的方法
本申请涉及计算机
,具体涉及用户界面
,尤其涉及进度条显示方法和装置。
技术介绍
进度条是UI(UserInterface,用户界面)中一种非常实用的组件,其可以在计算机在处理任务时,以图片形式实时地显示处理任务的速度、完成度、剩余未完成任务量的大小和可能需要的处理时间。一般以长方形条状显示。进度条可提供用户程序运行的可视化反馈,随着某一事件或过程向前发展或运行,进度条从左向右或从下向上用高亮显示的方块填充进度条。由于进度条可动态显示任务进度,用户可以根据进度条的进度判断程序是否失去了响应,从而能够避免长时间地执行某个耗时操作,提高了用户界面的友好性。为了实现实时显示进度,现有技术主要采用轮询或长轮询的方式获取进度信息,所述的轮询是指在特定的的时间间隔,前端发送查询数据至后端(或服务器),然后由后端(服务器)返回最新的数据给前端,或者后端定时发送进度心跳数据到前端,前段获取进度数据后相应控制进度表格。然而,这种传统的轮询或长轮询的方式,需要浏览器不断的向后端(服务器)出请求,而这种请求需要占用了大量的网络带宽资源;同时,在轮询过程中,会频繁的创建TCP请求及销毁请求,又会占用大量的服务器资源。另外,从技术具体实现而言,现有进度条的实现技术手段均较为复杂,且存在一定的缺陷。如公布号为CN106547523A的专利技术专利公布了一种进度条进度显示方法、装置及系统,该技术方案为:父节点依据与其连接的子节点的比重向子节点发送子任务分配信息,子节点在执行子任务的过程中向父节点发送子任务执行进度值,若父节点不是根节点则继续上报进度值,直至根节点计算出根节点对应的任务量完成的进度值并进行相应显示。该方法主要解决多层次组合功能的进度条进度的显示,但该方法在实现过程中需要大量的编码才能实现,多层次的组合查询需要消耗大量的服务资源,且对于跨平台的进度监控存在一定的局限性。如公布号为CN105183322A的专利技术专利公布了一种进度条显示方法和装置,通过在对后续进度条单元进行显示时通过参考之前进度条单元的显示速度和当前进度条单元的预期显示速度,对当前进度条的显示速度进行修正,实现了进度条显示的平缓性。该技术方案很好的解决了现有进度条不能准确反映任务执行进度情况的问题,但该技术方案存在实现编码多,对于多任务的情况下,实现及维护存在工作量大的问题。总体而言,现有进度条实时加载或实现的方法较多,但在实现上均需要大量的编码,且对跨平台及多任务的进度监测没有合适的解决方案。
技术实现思路
本专利技术针对现有技术的不足,提出了一种基于activeMq实现进度条的方法,该方法的利用使得进度条的开发及管理变得简洁和方便,同时解决了传统进度条实现不能针对跨平台及多任务的情况。本专利技术所述的一种基于activeMq实现进度条的方法包括:后端对待监控业务进行实时进度计算,并将待监控业务的ID及执行进度发送给前端activeMq,前端监听对应待监控业务ID的activeMq消息,并利用前端page页面的script标签及DIV标签控制和显示进度条。进一步的,所述一种基于activeMq实现进度条的方法具体实现过程为:步骤一:后端发送Topic类型消息至前端加载的activeMq;步骤二:前端page页面通过stomp组件获取activeMq接收的Topic类型消息并将Topic类型消息传送至前端page页面的DIV标签;步骤三:DIV标签根据根据Topic类型消息控制并显示进度条。进一步的,所述前端page页面通过stomp组件将获取activeMq接收的Topic类型消息并传送至前端page页面的DIV标签具体包括:前端page页面加载jQuery组件;前端page页面加载Stomp组件的Stomp.js文件;使用前端page页面的script标签加载Stomp.js文件;前端page页面的script标签利用Stomp.js文件从activeMq中获取Topic类型消息并将Topic类型消息传入前端page页面的DIV标签中。进一步的,所述的Topic类型消息包括控制数据的id和进度数据两部分。进一步的,所述DIV标签分为DIV大标签和DIV小标签,所述DIV大标签控制进度条样式,所述DIV小标签根据Topic类型消息的进度数据控制进度条增长进度。进一步的,所述前端和后端为同一平台;进一步的,所述前端和后端为不同平台。本专利技术所述技术方案的有益效果在于:利用本专利技术所述的方法,只需要编写少量的发送mq消息的数据的代码,和Div格式数据,或其他的格式的进度条,就可以实现各种漂亮的进度条了,简单实用,比起同类的进度条实现,简洁,干净,维护起来也非常轻松;另外,本专利技术所述技术方案解决了传统技术无法显示跨平台、多任务同时监控进度条的问题。具体实施方式本专利技术所述的一种基于activeMq实现进度条的方法是针对软件开发过程中,根据开发需求,有较多的地方需要单一或同时使用进度条,而这些进度条实现起来也是非常的繁琐,需要后台编写大段代码,定时发送进度心跳数据到前端,前段获取进度数据后,控制进度表格和div的带色块的长度变化实现心跳,如果进度条的地方是在多条数据中,更是及其繁琐,容易出错,串行,如果需要实现跨平台的进度监测,开发工作更加繁重,且维护工作也需要消耗大量的精力和时间,这对软件开发而言是一种极大的弊端。基于软件开发中进度监测存在的现实需要及问题,提出了一种基于activeMq实现进度条的方法,该方法是通过开源的消息组件activeMq和开源的js组件Stomp,以及Stomp所依赖的jQuery为基础来实现的,后端使用java或者其他语言向前端加载的activeMq上发送Topic类型的消息(Topic类型消息包括控制数据的id和进度数据两部分),前端只需要很简单的通过Stomp获取需检测的Id和数据的进度数据,并通过前端page页面的script标签及DIV标签控制和显示进度条的长度就可以实现本专利技术所述的目的。本专利技术所述一种基于activeMq实现进度条的方法能够适用于不同平台之前的通信,即可以实现跨平台的进度监控。不同平台向加载有activeMq的前端发送Topic类型的消息的方式为现有通用技术,实现方式为本领域技术人员常用技术。本专利技术所述的一种基于activeMq实现进度条的方法包括:后端对待监控业务进行实时进度计算,并将待监控业务的ID及执行进度发送给前端activeMq,前端监听对应待监控业务ID的activeMq消息,并利用前端page页面的script标签及DIV标签控制和显示进度条。所述一种基于activeMq实现进度条的方法具体实现过程为:步骤一:后端发送Topic类型消息至前端加载的activeMq;步骤二:前端page页面通过stomp组件获取activeMq接收的Topic类型消息并将Topic类型消息传送至前端page页面的DIV标签;步骤三:DIV标签根据根据Topic类型消息控制并显示进度条。所述前端page页面通过stomp组件将获取activeMq接收的Topic类型消息并传送至前端page页面的DIV标签具体包括:前端page页面加载jQuery组件;前端page页面本文档来自技高网
...

【技术保护点】
一种基于activeMq实现进度条的方法,其特征在于,所述实现进度条的方法为:后端对待监控业务进行实时进度计算,并将待监控业务的ID及执行进度发送给前端activeMq,前端监听对应待监控业务ID的activeMq消息,并利用前端page页面的script标签及DIV标签控制和显示进度条。

【技术特征摘要】
1.一种基于activeMq实现进度条的方法,其特征在于,所述实现进度条的方法为:后端对待监控业务进行实时进度计算,并将待监控业务的ID及执行进度发送给前端activeMq,前端监听对应待监控业务ID的activeMq消息,并利用前端page页面的script标签及DIV标签控制和显示进度条。2.如权利要求1所述的一种基于activeMq实现进度条的方法,其特征在于,所述实现进度条方法具体过程为:步骤一:后端发送Topic类型消息至前端加载的activeMq;步骤二:前端page页面通过stomp组件获取activeMq接收的Topic类型消息并将Topic类型消息传送至前端page页面的DIV标签;步骤三:DIV标签根据根据Topic类型消息控制并显示进度条。3.如权利要求2所述的一种基于activeMq实现进度条的方法,其特征在于:实现步骤2的方法如下:前端page页面加载jQuery组件;前端page页面加载...

【专利技术属性】
技术研发人员:杨思忠高振鹏
申请(专利权)人:中科信息安全共性技术国家工程研究中心有限公司
类型:发明
国别省市:北京,11

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

1