1.需要组装要展示的数据,至于如何怎样去设计数据模型,看你要展示的图形和需要的数据就行了。来个简单的。

实体类,只有两个属性,也可以使用Bean里面的实体类,无所谓了。

  1. package com.golden.entity;
  2. public class Doughnut {
  3. public Doughnut() {
  4. }
  5. private String label;
  6. private int value;
  7. public String getLabel() {
  8. return label;
  9. }
  10. public void setLabel(String label) {
  11. this.label = label;
  12. }
  13. public int getValue() {
  14. return value;
  15. }
  16. public void setValue(int value) {
  17. this.value = value;
  18. }
  19. public Doughnut(String label, int value) {
  20. super();
  21. this.label = label;
  22. this.value = value;
  23. }
  24. }

2.做一个请求到Servlet,简单使用,也可以请求到Action,无所谓。该Servlet从后来得到数据,然后设置到该请求环境中。

  1. package com.golden.servlet;
  2. import java.io.IOException;
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import javax.servlet.ServletException;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9. import com.golden.entity.Doughnut;
  10. @SuppressWarnings("serial")
  11. public class FirstServlet extends HttpServlet {
  12. public void doGet(HttpServletRequest request, HttpServletResponse response)
  13. throws ServletException, IOException {
  14. List<Doughnut> list = new ArrayList<Doughnut>();
  15. Doughnut d1 = new Doughnut("France", 17);
  16. Doughnut d2 = new Doughnut("India", 12);
  17. Doughnut d3 = new Doughnut("Brazil", 18);
  18. Doughnut d4 = new Doughnut("USA", 8);
  19. Doughnut d5 = new Doughnut("Australia", 10);
  20. Doughnut d6 = new Doughnut("Japan", 7);
  21. Doughnut d7 = new Doughnut("England", 5);
  22. Doughnut d8 = new Doughnut("Nigeria", 12);
  23. Doughnut d9 = new Doughnut("Italy", 8);
  24. Doughnut d10 = new Doughnut("China", 10);
  25. Doughnut d11 = new Doughnut("Canada", 19);
  26. Doughnut d12 = new Doughnut("Germany", 15);
  27. list.add(d1);
  28. list.add(d2);
  29. list.add(d3);
  30. list.add(d4);
  31. list.add(d5);
  32. list.add(d6);
  33. list.add(d7);
  34. list.add(d8);
  35. list.add(d9);
  36. list.add(d10);
  37. list.add(d11);
  38. list.add(d12);
  39. request.getSession().setAttribute("list", list);
  40. request.getRequestDispatcher("/show.jsp").forward(request, response);
  41. }
  42. public void doPost(HttpServletRequest request, HttpServletResponse response)
  43. throws ServletException, IOException {
  44. doGet(request, response);
  45. }
  46. }

3.配置,例如需要的Swf文件和JS文件,因为需要JSTL,所以要引入包,页面引进标签,一些低级的工作,赶紧搞定。

4.页面加载时初始化方法解析数据生成XML文件的字符串,然后设置给SWF,他就显示数据了,搞定。

  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
  2. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  3. <%@page import="com.golden.entity.Doughnut"%>
  4. <%
  5. String path = request.getContextPath();
  6. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
  7. %>
  8. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  9. <html>
  10. <head>
  11. <base href="<%=basePath%>">
  12. <title>FusionCharts报表生成页面</title>
  13. <script type="text/javascript" src="<%=request.getContextPath() %>/js/FusionCharts.js"></script>
  14. <script type="text/javascript">
  15. var majorXml;
  16. //var list;
  17. function init(){
  18. initXml();
  19. }
  20. function initXml(){
  21. majorXml="<chart palette='2' showBorder='1'>";
  22. majorXml += "<c:forEach var ='item' items='${list}'><set label='${item.label}' value='${item.value}'/></c:forEach>";
  23. majorXml+="</chart>";
  24. showDou3D();
  25. }
  26. function showDou3D(){
  27. var myChart=new FusionCharts("<%=request.getContextPath()%>/FusionCharts/Doughnut3D.swf", "ChartId", "600", "300", "0", "0");
  28. myChart.setDataXML(majorXml);
  29. myChart.render("majorbus");
  30. }
  31. </script>
  32. </head>
  33. <body onload="init()">
  34. <center>
  35. <div style="" id="majorbus">
  36. </div>
  37. </center>
  38. </body>
  39. </html>

5.不知道文件在哪里不要紧,在Webroot下建立js和FusionCharts文件夹,分别把附近弄进去,没有JSTL的LIB里有。

  • js.rar (4.5 KB)
  • 下载次数: 485
  • lib.rar (390.2 KB)
  • 下载次数: 785

FusionCharts生成报表应用的更多相关文章

  1. FusionCharts制作报表使用XML导入数据时出现的中文乱码问题

    今天在使用FusionCharts制作报表时用XML导入数据,总是出现乱码问题,下面是我的解决方案. 让FusionCharts支持中文 刚刚将XML导入到html中后,在火狐浏览器一直报Invali ...

  2. 使用C#通过调用minitab的COM库自动化生成报表

    本文介绍通过C#调用minitab com组建自动化生成报表的方法. 首先需要在minitab中通过手动配置的方式生成报表来得到该报表的命令行,过程如下 选择菜单“编辑器”->“启用命令”启用命 ...

  3. FusionCharts生成Flash图表常见问题FAQ

    本文主要汇总了FusionCharts生成Flash图表时的一些常见问题(FAQ)以及解决方法/调试方法,欢迎交流! 问题描述:利用FusionCharts创建Flash图表时,能否直接从数组或rec ...

  4. 使用google chart api生成报表图片

    使用google chart api生成报表图片 截图 折线图 饼图 柱状图   实现方法 原理是调用google的报表服务,动态拼接url字符串,得到一张图片,数据和说明文字都是从url中传进去的. ...

  5. 告别.NET生成报表统计图的烦恼

    告别.NET生成报表统计图的烦恼 标签: 报表.netstatistics图形数据库文档 2009-10-09 12:00 635人阅读 评论(0) 收藏 举报  分类: .net程序设计(C#)(2 ...

  6. 使用Python定时执行一任务,自动登录某web系统,生成报表,然后发送邮件给指定人员

    一.项目需求 每周从A系统生成一张Excel报表,发送此报表给指定人员,相关人员依据此报表去完成后续的工作. 项目限制: 1.无法通过EDI系统交互的方式从后台读取数据 2.由于公司网络环境限制,不能 ...

  7. 使用python获取整月每一天的系统监控数据生成报表

    1.安装阿里开源监控工具tsar tsar官方网站 wget -O tsar.zip https://github.com/alibaba/tsar/archive/master.zip --no-c ...

  8. 使用FastReport报表工具生成报表PDF文档

    在我们开发某个系统的时候,客户总会提出一些特定的报表需求,固定的报表格式符合他们的业务处理需要,也贴合他们的工作场景,因此我们尽可能做出符合他们实际需要的报表,这样我们的系统会得到更好的认同感.本篇随 ...

  9. C# WinfForm 控件之dev报表 XtraReport (八)动态生成报表

    功能说明:生成一个报表文件DV1,保存到本地AA.rep,再重新加载这个文件到DV2 1.布局如下图: panel1 上有三个button panel2上有个documentView dv1 pane ...

随机推荐

  1. Python 2 中的编码

    在 Python 尤其是 Python2 中,编码问题是困扰开发者尤其初学者的一大问题.什么 Unicode/UTF-8/str ,又是 decode/encode 的,搞得人头都大了.其实不然,这有 ...

  2. C语言_error_MSB8031

    关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法 Visual Studio 2013 编译旧的 mul ...

  3. 《Windows驱动开发技术详解》之驱动程序的同步处理

    中断请求级 中断请求被分为软件中断和硬件中断两种,这些中断都映射成不同级别的中断请求级.每个中断请求都有各自的优先级别,正在运行的线程随时都可以被中断打断,进入到中断处理程序.优先级高的中断来临时,处 ...

  4. Chapter 2 Open Book——10

    I sent that, and began again. 我发送了它,然后又一次重新开始写了. Mom,Everything is great. Of course it's raining. I ...

  5. Java编程中时区和时间相关的问题

    先说一个结论:时间戳是一个和时区无关的东西,在哪里都是一致的!但是转化为字符串之后,就和时区有关系了. 以下为内容: 参考链接:http://m.blog.csdn.net/article/detai ...

  6. css3-多列显示文字

    -------------------------- <style>            #demo{                margin: 20px auto;         ...

  7. read file in a single line

    String text= new Scanner(File('input.txt')).useDelimiter("\\A").next(); java version!

  8. 我的 Github 个人博客是怎样炼成的

    Joey's Blog 长大后才发现政府建造 GFW 真是太 TM 机智了,由于本人自制力较差,且不说 91porn, youporn 等两性知识网站的超强战斗力,单单一个Youtube就可以让我瞬间 ...

  9. HAProxy与varnish

    Even if HAProxy can do TCP proxying, it is often used in front of web application, exactly where we ...

  10. jni开发中的常见错误

    * java.lang.UnsatisfiedLinkError: Native method not found: 本地方法没有找到 * 本地函数名写错 * 忘记加载.so文件 没有调用System ...