`
zqding
  • 浏览: 96047 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

struts2 + jfreechart整合

阅读更多

struts2 + jfreechart整合:
1、配置环境:
 在struts2中,默认的struts-default.xml中,并没有包含chart的result-type,它是插件的形式使用的。
 把 struts2的解压包的lib里找到struts2-jfreechart-plugin-2.1.8.1.jar,拷贝到你的项目的 classpath里,
 因为这个插件里的文件struts-plugin.xml里有一个chart的result-type。内容如下:

	<package name="jfreechart-default" extends="struts-default">
       	<result-types>
    		<result-type name="chart" class="org.apache.struts2.dispatcher.ChartResult">
    			<param name="height">150</param>
    			<param name="width">200</param>
    		</result-type>
    	</result-types>
    </package>

 

 

 同时把jfreechart的库文件jfreechart-1.0.13.jar和jcommon-1.0.16.jar拷贝到你的项目的 classpath里。

 

2、修改web.xml,增加下面的struts2的配置:

	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
		<init-param>
			<param-name>struts.i18n.encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
	</filter>

	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

 

 

3、在src目录下增加新建一个struts.xml配置文件,其主要内容如下:

	<!--
		关于extends继承jfreechart-default这点请大家注意
		因为在struts-default这个包里并没有result-type为chart的 chart
		定义在前面我们导入的struts2-jfreechart-plugin-2.1.8.jar 下面的struts-plugin.xml文件中
	-->
	<package name="jfreechart" extends="jfreechart-default">
		<action name="jfreechart" class="org.usc.actions.JfreeChartAction">
			<result name="success" type="chart">
				<param name="width">600</param>
				<param name="height">400</param>
			</result>
		</action>
	</package>

 

 

4、写测试页面:

	<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
	<%
	String path = request.getContextPath();
	String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
	%>
	<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
	<html>
	  <head>
		<base href="<%=basePath%>">
		<title>jfreechart</title>
	  </head>
	  <body>
		 <img alt="jfreechart" src="jfreechart.action"/>
	  </body>
	</html>

 

 

5、在你的action代码里,返回一个JFreeChart对象即可:

	/**
	 * File   : JfreeChartAction.java
	 * Author : zqding
	 * Date   : 2010-7-27
	 * Version:
	 * Desc   : 	
	 */
	package org.usc.actions;

	import org.jfree.chart.ChartFactory;
	import org.jfree.chart.JFreeChart;
	import org.jfree.data.general.DefaultPieDataset;

	import com.opensymphony.xwork2.ActionSupport;

	public class JfreeChartAction extends ActionSupport {
		/**
		 * 定义JFreeChart对象 大家请注意在这里JFreeChart对象名只能为chart 
		 * 不能是别的, 关于这点大家可以上struts2网站上面查看一下
		 * http://struts.apache.org/2.x/docs/jfreechart-plugin.html
		 */
		private JFreeChart chart;
		
		public JFreeChart getChart() {
			return chart;
		}

		public void setChart(JFreeChart chart) {
			this.chart = chart;
		}

		@Override
		public String execute() throws Exception {
			 //设置数据
			DefaultPieDataset data = new DefaultPieDataset();
			data.setValue("Java", new Double(43.2));
			data.setValue("Visual Basic", new Double(1.0));
			data.setValue("C/C++", new Double(17.5)); 
			data.setValue("Android", new Double(60.0));
			//设置字体及生成的图片格式设置略,请参照API文档
			//生成JFreeChart对象
			chart = ChartFactory.createPieChart("Programme Language", data, true,true, false);
			return SUCCESS;
		}
	}

 

 6、发布到应用服务器,进行测试。
 http://localhost:9090/SSHDemo/jfreechart.jsp
 如下图:

jfreechart

分享到:
评论

相关推荐

    struts2+JFreeChart整合

    **Struts2与JFreeChart整合** 整合Struts2和JFreeChart,主要是为了让Struts2的Action能够生成JFreeChart图表,并将其以图片或其他格式返回给客户端。以下是一般的整合步骤: 1. **引入依赖**: 在项目中添加Struts...

    struts2+jfreechart

    Struts2和JFreeChart是两个在Java Web开发中广泛使用的开源库。Struts2是一个强大的MVC(Model-View-...记住,实践是最好的老师,尝试运行和修改这些示例,将有助于你更好地掌握Struts2和JFreeChart的整合技巧。

    Struts+jfreeChart整合

    Struts+jfreeChart整合注意事项以及代码实现

    struts2 + jfreechart demo

    5. **整合与部署**:将Struts2和JFreeChart的代码整合到一个Web项目中,包括添加依赖库,配置Web.xml,以及打包和部署到服务器(如Tomcat)的过程。 6. **前端交互**:尽管示例可能不涉及复杂的前端交互,但理解...

    JFreeChart(Struts1+jFreeChart)

    综上所述,"JFreeChart(Struts1+jFreeChart)"的整合是Java Web开发中的一个典型应用场景,它结合了Struts1的MVC架构优势和JFreeChart的图表绘制能力,实现了动态数据的可视化展示。在实际项目中,还需要考虑如何优化...

    spring+struts2+hibernate+ajax+jfreechart 广告管理系统

    《构建基于Spring、Struts2、Hibernate、Ajax与JFreeChart的广告管理系统》 在现代企业信息化建设中,广告管理系统的开发是至关重要的,它能够有效地整合广告资源,提高工作效率,减少人工操作错误。本系统利用了...

    struts2与jfreechart整合

    在将Struts2与JFreeChart整合的过程中,主要涉及以下几个关键知识点: 1. **Struts2架构理解**:Struts2框架提供了Action、Interceptor(拦截器)、Result和ValueStack等核心概念,帮助开发者实现业务逻辑和视图的...

    struts2+hibernate+spring+jfreechart+导出excel+导出pdf完美整合

    Struts2、Hibernate、Spring 和 JFreeChart 是四个在Java Web开发中广泛使用的框架和技术,它们的整合可以构建一个功能强大的后端系统,同时具备数据可视化和文件导出能力。 Struts2 是一个基于 Model-View-...

    struts2+hibernate+spring+jfreechart+导出excel+导出pdf完美整合.zip

    这个压缩包文件“struts2+hibernate+spring+jfreechart+导出excel+导出pdf完美整合.zip”显然是一个整合了这些技术的示例项目,用于演示如何在实际开发中实现数据处理、视图展示以及文件导出功能。 首先,Struts2 ...

    Spring+Struts+JFreeChart 自动生成统计图

    标签“源码”意味着这个项目可能提供了完整的代码示例,可以帮助开发者了解如何将Spring、Struts和JFreeChart整合在一起。而“工具”可能指的是开发者在构建此应用时使用的辅助工具,比如IDE(如Eclipse或IntelliJ ...

    struts2整合 jfreechart 实现报表

    首先,整合Struts2和JFreeChart的首要步骤是确保在项目中引入JFreeChart和相关依赖。你需要在你的Maven或Gradle配置文件中添加JFreeChart的依赖,通常为以下形式: ```xml &lt;groupId&gt;org.jfree &lt;artifactId&gt;...

    struts2整合JFreechart

    struts2整合JFreechart: jcommon-1.0.16.jar jfreechart-1.0.13.jar struts2-jfreechart-plugin-2.0.11.jar 导成图片操作说明

    Struts2与JFreechart整合

    至此,你已经成功地在Struts2应用中整合了JFreeChart,实现了动态生成并展示图表的功能。这个实例虽然简单,但对于理解和学习这两个库的结合使用是非常有帮助的。你可以根据实际需求,自定义图表样式,调整数据源,...

    struts+jfreechart例子源代码

    在Struts1框架中整合JFreeChart,通常是为了在Web应用中动态生成图表。首先,你需要在Action类中创建JFreeChart对象,填充数据集,然后将其转换为JPEG或PNG等图片格式的byte数组。接着,你可以通过Struts的Action...

    struts2.0与JFreeChart整合

    ### Struts2.0与JFreeChart整合:深入解析与实践 #### 一、整合概述 Struts2作为Java Web开发中的MVC框架,提供了强大的控制器功能,而JFreeChart则是一款优秀的开源Java图表库,专门用于在Web应用中生成各种统计...

    struts2结合jfreechart框架出现图形所需的包

    总的来说,将Struts2与JFreeChart整合并成功显示图形需要对这两个框架有深入的理解,同时需要注意依赖管理、数据处理、视图渲染和调试技巧。只有当所有这些环节都正确无误,才能确保图形的顺利展示。如果你在实际...

    struts2整合jfreechart

    本实例将讲解如何在Struts2框架中整合JFreeChart,以实现动态生成图表的功能。 首先,确保你已经安装了Struts2框架,并且在项目中配置了Struts2的核心库。这通常包括添加struts2-core.jar到类路径中,并在web.xml中...

    struts2整合JfreeChart完成报表功能

    整合Struts2和JFreeChart,主要是为了在web应用中展示动态生成的数据图表,例如报表。以下是整合的步骤和关键知识点: 1. **下载和引入JFreeChart库**: 首先,你需要从JFreeChart的官方网站...

    struts2与JFreeChart整合实例

    使用JFreeChart,必须调用在web-inf目录下导入jfreechart.jar,和jcommon.jar包 使用jfreechart-1.0.13.jar查看图表时中文乱码,降低jfreechart版本ok 显示图表时都可以在获取JfreeChart对象方法中使用3D方式 ...

Global site tag (gtag.js) - Google Analytics