本发明专利技术涉及一种Java结合HTML5生成图表的框架展现方法及其系统,其中该系统包括数据获取模块、数据处理模块和数据展现模块。采用了Java和HTML5相结合的技术,通过对需要生成图表的数据进行实体化的封装,使数据展现得到了对象化,达到了原先过程化到对象化的具体变化,实现了Java与HTML5结合生成图表的技术效果,并且使生成的图表美观大方,同时使用异步刷新无需刷新整个页面,并且图表还具有动画效果,方便了开发者进行开发,可以有效地提高工作效率,提升开发速度,节约项目完成的时间。
【技术实现步骤摘要】
本专利技术属于Java开发中的前端展现领域,涉及一种图表展现的方式,具体涉及一种新兴的HTML5技术。
技术介绍
当前前端图表展现技术多数为静态图表或者Flash生成的图表,存在的时间较长,优点是使用稳定,长期的技术积累框架多容易实现。缺点是生成的报表不够美观,使用异步刷新的技术较少,或者是Flash的使用较麻烦。fusioncharts (HTML5版)的出现使得报表更加美观,但是从后端(如数据库中)取到的数据,需要到前端进行数据处理,将最原始的对象型数据,循环解析并取出数据展现需要的属性,将属性拼写填入预先定义好的xml格式字符串中,然后将处理好的数据组成fusioncharts 可以使用的 数据结构,如{〃chart〃: {〃caption〃: 〃MonthlyRevenue〃,〃xaxi” //-,g, I ” ”·//// //I(-. . // // At // // I-I// ” r\”~\sname : Month,yaxisname : Revenue,numberpretix : ,showvalues : I, data:[ {label:Jan,value:420000},{label:Feb,value:910000},{labeI:Mar,value:720000}, {label:Apr,value:550000}, {label:May,value:810000}, {label:Jun,value:510000}, {label:Jul,value:680000}, {label:Aug,value:620000}, {label:Sep,value:610000}, {label:0ct,value:490000}, {label:Nov,value:530000}, {label:Dec,value:330000}],trendlines: {line:[{startvalue:700000,color:009933 、// // rp, // η // , - Γ Γ I χ* · 丄· Γ Γ丄 Γ Γ” ”「,disp_Layva_Lue : iarget j」j, styles : L ι detinition : L ι style : L ι name : CanvΑ . // // ,”” · , . ”””” ο -ι // // , , // // f\ // // ι, . // ^ 1 ^ ^asAnim,type : animation,par am : _xSca_Le,start : ,duration : I _}」_}」,application^:[{〃apply〃:[{〃toobject〃:〃Canvas〃,〃styles〃:〃CanvasAnim〃}]}]}]},然后交给fusioncharts进行处理。这将导致前端显示部件还要承担一部分数据处理的工作,这将给前端带来开发效率低下的问题。公开号为CN102591961A的专利申请公开了一种制作数据图表的方法及系统,其中使用fusioncharts作为展现组件,而在业务模块对用户数据进行分析统计生成数据包后,视图模块还需要对该数据包进行处理(如调用标签)来生成需要展示的图表,这将给前端带来开发负担,开发效率低下。
技术实现思路
有鉴于此,本专利技术针对传统图表展现技术中的报表不够美观,使用异步刷新的技术较少,前端开发效率低下的问题,提供一种Java结合HTML5生成图表的框架展现方法及其系统,采用了 Java和HTML5相结合的技术,通过对需要生成图表的数据进行实体化的封装,使数据展现得到了对象化,达到了原先过程化到对象化的具体变化,实现了 Java与HTML5结合生成图表的技术效果,并且使生成的图表美观大方,同时使用异步刷新无需刷新整个页面,并且图表还具有动画效果,方便了开发者进行开发,可以有效地提高工作效率,提升开发速度,节约项目完成的时间。为解决上述问题,本专利技术提供的技术方案如下 一种Java结合HTML5生成图表的框架展现系统,其中该系统包括数据获取模块、数据处理模块和数据展现模块;其中, 所述数据获取模块,用于利用Java接口,从数据库中获取需要展现的原始数据;所述数据处理模块,用于利用Java接口,对所述原始数据进行封装处理,并传输到所述数据展现模块; 所述数据展现模块,用于通过Fusioncharts直接接收所述处理后的数据并进行展现。优选的是,所述数据获取模块利用Java接口,使用sql语句从mysql数据库中获取需要展现的原始数据。在上述任一方案中优选的是,所述数据处理模块包括第一封装模块、数据归类模·块、第二封装模块和数据传输模块;其中, 所述第一封装模块,用于利用Java接口,将所述原始数据封装成Java对象,生成一个类文件的集合; 所述数据归类模块,用于将所述Java对象数据取出,并根据归类条件进行归类,然后分别存入相应的类别集合当中; 所述第二封装模块,用于利用chart-support接口,将所述归类后的类别集合数据,封装成所述数据展现模块可以识别的展现对象; 所述数据传输模块,用于将所述展现对象传输到所述数据展现模块。在上述任一方案中优选的是,所述归类条件包括日期、地域。在上述任一方案中优选的是,所述展现对象包括json对象或xml对象。本专利技术的第二个方面涉及一种Java结合HTML5生成图表的框架展现方法,包括以下步骤 利用Java接口,从数据库中获取需要展现的原始数据; 利用Java接口,对所述原始数据进行封装处理,并传输到前端; 所述前端通过Fusioncharts直接接收所述处理后的数据并进行展现。优选的是,所述利用Java接口,从数据库中获取需要展现的原始数据,进一步包括利用Java接口,使用sql语句从mysql数据库中获取需要展现的原始数据。在上述任一方案中优选的是,所述前端通过Fusioncharts直接接收所述处理后的数据并进行展现,进一步包括 利用Java接口,将所述原始数据封装成Java对象,生成一个类文件的集合; 将所述Java对象数据取出,并根据归类条件进行归类,然后分别存入相应的类别集合当中; 利用chart-support接口,将所述归类后的类别集合数据,封装成所述前端可以识别的展现对象; 将所述展现对象传输到所述前端。在上述任一方案中优选的是,所述归类条件包括日期、地域。在上述任一方案中优选的是,所述展现对象包括json对象或xml对象。可以看出,采用本专利技术的系统和方法,只要使用chart-support相关的API,就可以在业务处理层面上对从数据库得到的数据进行解析,业务处理,然后把数据进行封装到对应的实体对象中,直接将实体对象转换成fusioncharts需要的json数据或者xml数据,fusioncharts接收到数据直接可以进行展现,不必再进行数据处理。这样既实现了业务与展现层次分明,又可以提高开发效率,一次开发多次使用,简化了开发步骤。本专利技术的优点在于1)逻辑结构清晰,对比原有技术可以展现更清晰的逻辑结构从而处理数据更明了; 2)数据生成方便,使用jav本文档来自技高网...
【技术保护点】
一种Java结合HTML5生成图表的框架展现系统,包括数据获取模块、数据处理模块和数据展现模块;其特征在于,所述数据获取模块,用于利用Java接口,从数据库中获取需要展现的原始数据;所述数据处理模块,用于利用Java接口,对所述原始数据进行封装处理,并传输到所述数据展现模块;所述数据展现模块,用于通过Fusioncharts直接接收所述处理后的数据并进行展现。
【技术特征摘要】
1.一种Java结合HTML5生成图表的框架展现系统,包括数据获取模块、数据处理模块和数据展现模块;其特征在于, 所述数据获取模块,用于利用Java接口,从数据库中获取需要展现的原始数据;所述数据处理模块,用于利用Java接口,对所述原始数据进行封装处理,并传输到所述数据展现模块; 所述数据展现模块,用于通过Fusioncharts直接接收所述处理后的数据并进行展现。2.根据权利要求I所述的系统,其特征在于,所述数据获取模块利用Java接口,使用sql语句从mysql数据库中获取需要展现的原始数据。3.根据权利要求I所述的系统,其特征在于,所述数据处理模块包括第一封装模块、数据归类模块、第二封装模块和数据传输模块;其中, 所述第一封装模块,用于利用Java接口,将所述原始数据封装成Java对象,生成一个类文件的集合; 所述数据归类模块,用于将所述Java对象数据取出,并根据归类条件进行归类,然后分别存入相应的类别集合当中; 所述第二封装模块,用于利用chart-support接口,将所述归类后的类别集合数据,封装成所述数据展现模块可以识别的展现对象; 所述数据传输模块,用于将所述展现对象传输到所述数据展现模块。4.根据权利要求3所述的系统,其特征在于,所述归类条件是日期。5....
【专利技术属性】
技术研发人员:王帅,白德鑫,
申请(专利权)人:乐视网信息技术北京股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。