自己在网上搜了很多 最后好不容易 弄出来 第一次弄 呵呵 拿出来 分享一下:
写的 比较全面
/** * 类库 * 1、jfreechart-1.0.5.jar、jcommon-1.0.9.jar、gnujaxp.jar * 2、jbcl.jar、dx.jar、beandt.jar 由JBuilder2006的lib下提供 */ |
首先 1. 这是jsp页面显示报表代码:
- <%@ page contentType="text/html;charset=GBK"%>
- <%@ page import="org.jfree.data.general.DefaultPieDataset"%>
- <%@ page import="org.jfree.chart.*"%>
- <%@ page import="org.jfree.chart.plot.*"%>
- <%@ page import="org.jfree.chart.servlet.ServletUtilities"%>
- <%@ page import="org.jfree.chart.labels.StandardPieToolTipGenerator"%>
- <%@ page import="org.jfree.chart.entity.StandardEntityCollection"%>
- <%@ page import="java.io.*"%>
- <%@ page import="ycf.domain.Top"%>
- <%@ page import="ycf.service.MerInfoService"%>
- <%@ page import="java.util.*"%>
- <HTML>
- <HEAD>
- <META http-equiv=Content-Type content="text/html; charset=GBK">
- <META NAME="Author" CONTENT="Alpha">
- </HEAD>
- <BODY>
- <%
- null;
- new
- new
- lt=merInfoService.getTop5();
- Iterator it=lt.iterator();
- new
- while(it.hasNext()){
- top=(Top)it.next();
- String name=String.valueOf(top.getMerId());
- int
- dpd.setValue(name,value);
- }
- new PiePlot3D(dpd);//生成一个3D饼图
- //plot.setURLGenerator(new StandardPieURLGenerator("DegreedView.jsp"));//设定图片链接
- new JFreeChart("",JFreeChart.DEFAULT_TITLE_FONT, plot, true);
- //可选,设置图片背景色
- "订购排行榜分析");//可选,设置图片标题
- new
- new
- new
- new PrintWriter(out);//输出MAP信息
- //500是图片长度,300是图片高度
- //String filename = ServletUtilities.saveChartAsPNG(chart,500,300,info,session);
- 500,300,info,session);
- "map0",info,false);
- "/DisplayChart?filename="
- %>
- <P ALIGN="CENTER">
- <img src="<%= graphURL %>" width=500 height=300 border=0 usemap="#map0">
- </P>
- </BODY>
- </HTML>
2.这是java application显示报表:
- package
- import
- import
- import
- import
- import
- import
- import
- import
- import
- public class
- private static List lt=null;
- private MerInfoService merInfoService=null;
- private static Top top=null;
- public
- new
- }
- public static void
- new
- lt=top5.merInfoService.getTop5();
- Iterator it=lt.iterator();
- new
- while(it.hasNext()){
- top=(Top)it.next();
- String name=String.valueOf(top.getMerId());
- int
- dpd.setValue(name,value);
- }
- //Create JFreeChart object
- //参数可以查看源码
- "订购排行榜分析图",dpd,true,true,false);
- new ChartFrame("订购排行榜分析图",pieChart);
- pieFrame.pack();
- true);
- }
- }
3.web.xml 这样配置:
- <servlet>
- <servlet-name>DisplayChart</servlet-name>
- class>org.jfree.chart.servlet.DisplayChart</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>DisplayChart</servlet-name>
- <url-pattern>/DisplayChart</url-pattern>
- </servlet-mapping>
4. 这是处理从数据库中 查询数据 放入list中的函数
- //订购排行榜分析
- public
- {
- return
- }
5.这是sql查询语句
- <!-- 订购排行榜分析 -->
- "getTop" resultClass="top">
- select total_quantity as totalQuantity,
- merchandise_id as merId
- from (select sum(merchandise_quantity) as total_quantity,merchandise_id
- from orderform_list
- group by merchandise_id
- order by sum(merchandise_quantity) desc)
- where 6>rownum
- </select>
6.
总结:
虽然开始什么都不懂,但最后还是做出来了,充分验证了一个道理:
只要你打算做,肯定可以做出来 呵呵