• 学习元开发平台中引入jfreechart

    普通类
    • 支持
    • 批判
    • 提问
    • 解释
    • 补充
    • 删除
    • 一、引入jar包

    需要引入两个jar包:jcommon-1.0.16.jar 和 jfreechart-1.0.13.jar。把这两个jar包放到/WebRoot/WEB-INF/lib下便可。

    jar包下载地址:http://lcell.bnu.edu.cn/do/lcpage?action=view&koId=5018

    • 二、修稿web.xml

    在web.xml中加入一下代码:

    <servlet>
    <servlet-name>DisplayChart</servlet-name>
    <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>DisplayChart</servlet-name>
    <url-pattern>/servlet/DisplayChart</url-pattern>
    </servlet-mapping>

    • 三、在jsp中jfreechart的一个demo

    新建一个页面,比如/WebRoot/jfreechart/testjfreechart.jsp,把下面的代码复制到testjfreechart.jsp中。启动tomcat,访问这个页面面可得到下图所示的效果。

    <%@ page contentType="text/html;charset=UTF-8"%>
    <%@ page import="org.jfree.chart.ChartFactory,
    org.jfree.chart.JFreeChart,
    org.jfree.chart.plot.PlotOrientation,
    org.jfree.chart.servlet.ServletUtilities,
    org.jfree.data.category.DefaultCategoryDataset"
    %>
    <%
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.addValue(610, "广州", "猪肉");
    dataset.addValue(220, "广州", "牛肉");
    dataset.addValue(530, "广州", "鸡肉");
    dataset.addValue(340, "广州", "鱼肉");
    JFreeChart chart = ChartFactory.createBarChart3D("肉类销量统计图",
    "肉类",
    "销量",
    dataset,
    PlotOrientation.VERTICAL,
    false,
    false,
    false);
    String filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, null, session);
    String graphURL = request.getContextPath() + "/servlet/DisplayChart?filename=" + filename;
    %>
    <img src="<%= graphURL %>"width=500 height=300 border=0 usemap="#<%= filename %>">

    • 四、整合到struts中

    有了“三、在jsp中jfreechart的一个demo”,整合到struts中去应该不难,根据功能的不同分别写一个service文件和一个action文件就可以了。

    • 五、遇到的问题

    1、jar包一定要放到/WebRoot/WEB-INF/lib下,刚开始的时候放到/tomcat6_runtime_lib下出不来。

    2、根据网上的教程把gnujaxp.jar这个jar报也引入了,导致和其他原有的jar包冲突(好像是xml解析的冲突),导致了很多和怪异的问题,只要涉及到jfreechart则相应的文件就失效。最后把gnujaxp.jar删掉才解决的问题。

    3、生成的图表是存放到session中去的,这样不同的用户便不会相互影响。

    • 学习元样例访问地址:

    http://lcell.bnu.edu.cn/do/lcpageUser?action=manageMyLc&koId=2303

    有了这个样例,加上上面的讲解,大家就能够弄明白jfreechart的框架了吧

    • 标签:
    • filename
    • 文件
    • 广州
    • dataset.addvalue
    • false
    • 问题
    • 学习元
    • action
    • jar
    • 引入
    • jfreechart
    • 放到
  • 加入的知识群:
    学习元评论 (0条)

    评论为空
    聪明如你,不妨在这 发表你的看法与心得 ~



    登录之后可以发表学习元评论
      
暂无内容~~
顶部