waysun一路阳光

不轻易服输,不轻言放弃.--心是梦的舞台,心有多大,舞台有多大。踏踏实实做事,认认真真做人。

  BlogJava :: 首页 :: 新随笔 :: 联系 ::  :: 管理 ::
  167 随笔 :: 1 文章 :: 64 评论 :: 0 Trackbacks

注明:最近很多朋友跟我要源码,其实很简单的东西,自己尝试一下很快就解决了,目前我在外地出差,不能提供源代码下载,我不再传源码,请见谅。
在云南期间,收到几个朋友的邮件,希望发工程代码,因为我在云南,没有带本子,说声抱歉!

因为项目需要,前几天完成了fusioncharts的基本使用,但是还不能满足项目需求。
项目中需要实现按照客户的需求导出指定格式的文件,而且可以图表混编等,这就需要自己去扩展fusioncharts本身的导出。
下面简单介绍如何在服务器端使用JSP导出各种文件格式,并能自由扩展。因为时间比较紧,写的很凌乱,希望大家理解。

在J2EE框架下用JSP导出文件
1.将 exportAtClient导出属性设置为0(服务器导出),exportHandler设置为'exp.jsp'。
可以在chart.exportChart({exportFormat:'pdf',exportHandler:'exp.jsp',exportFileName:'test',exportParameters:'test'});设置,也可以在XML里设置。(注意在JS里设置会重写XML里面的导出属性设置)
2.exp.jsp为处理数据的文件,可实现各种文件格式的导出。


<%@ page language="java" import="com.hjtp.incas.chart.*" pageEncoding="utf-8"%>
<%@ page import="com.hjtp.incas.chart.helper.*"%>
<%@ page import="com.hjtp.incas.chart.exporthelper.*"%>
<%
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>   
    <title>导出图片</title>
   
 <meta http-equiv="pragma" content="no-cache">
 <meta http-equiv="cache-control" content="no-cache">
 <meta http-equiv="expires" content="0">   
 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
 <meta http-equiv="description" content="This is my page">
  </head>
  <body>
<%
 try
 {
           ExportHelperBean exportHelperBean=FusionChartsExportHelper.parseExportRequestStream(request);
           ExportFactory exportFactory=ExportFactory.getInstance();
           String type=(String)exportHelperBean.getExportParameterValue("exportformat");
           String fileName = (String)exportHelperBean.getExportParameterValue("exportfilename");
           ExportFormat exportFormat=new ExportFormat(type);
           String contentType=exportFormat.getContentType();
           String fix=exportFormat.getPostfix();
           response.reset(); 
           response.setContentType(contentType);
           response.addHeader("Content-Disposition","attachment; filename=\""+fileName+"."+fix+"\"");
           java.io.OutputStream os=response.getOutputStream();
           IFusionCharts iFusionCharts=exportFactory.getFusionCharts(type);
           iFusionCharts.export(exportHelperBean,os);
           os.flush();
           os.close();   
    
           out.clear();
           out=pageContext.pushBody();   
 }
 catch (Exception e)
 {
     e.printStackTrace();
 }
 %>
  </body>
</html>
3.如何扩展导出的文件格式为项目所需。
1.自定义导出
将服务器端导出参数设为exportHandler:'exp.jsp',即为使用我们自己
写的导出方式导出。
2.如何扩展自定义导出
(1)在exp.jsp中,可以看到如下两行代码
IFusionCharts iFusionCharts=exportFactory.getFusionCharts(type);
iFusionCharts.export(exportHelperBean,os);
其中exportFactory为一个工厂类,起分发器的作用,通过此类可以根据
扩展实际需求进行自定义扩展。
(2)自定义扩展实现 ,例如像实现对txt文件格式支持的导出,需要在新增加
一个类实现IFusionCharts 接口的export方法即可,同时在exportFactory
工厂类里添加对此支持的判断分发实现即可。



MyEcliplse下工程下载

posted on 2010-03-03 17:30 weesun一米阳光 阅读(3334) 评论(16)  编辑  收藏 所属分类: 经典实例

评论

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-03-22 15:20 yaozi
能不能写的更详细点?  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-03-22 15:58 weesun一米阳光
@yaozi
呵呵,因为没有时间,只是随便写的,工程里源码和demo,一看应该就明白了  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-03-30 18:11 blameswood
楼主,工程好象下不了,能否给我发份,谢谢!
blameswood@hotmail.com  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-03-31 09:14 waysun
@blameswood
我的网络硬盘的下载次数超了,所以现在下不了。  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-04-06 14:08 yaozi
@weesun一米阳光
我主要是对打印图片这块不是很熟悉!想问下大侠!
  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】[未登录] 2010-04-15 11:01 Jackey
下载不了啊 能不能把工程发给我啊 jackey_01511@hotmail.com 非常感谢!  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-04-22 21:09 求助
能可以发下你那工程么?万分感谢!我的邮箱:403652287@qq.com  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-05-27 13:42 段誉
想要工程文件,谢谢~ duanwq0007@163.com  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-10-11 13:30 顾勇
请问一下用,我用FusionCharts在jsp中为什么只能引入一个图形报表,我想要实现多图形的效果,html文件格式的是可以,jsp不知道为什么总是只能出来一个?  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-10-11 13:32 顾勇
另外,您的工程能否给我发一份,万分感谢~~
guyong1018@gmail.com  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-10-12 09:54 waysun
@顾勇
我目前在外地出差,自己的本子没有带,不能提供源代码,请见谅,另外,我已经明确注明了,希望您能看的明白!^_^
  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2010-10-14 16:55 顾勇
请问一下用,我用FusionCharts在jsp中为什么只能引入一个图形报表,我想要实现多图形的效果,html文件格式的是可以,jsp不知道为什么总是只能出来一个?  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2011-07-15 13:48
能否给我发一份案例 dong_junnan@163.com  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2011-08-02 10:59 示范点
请问怎样在js中执行导出事件?
black88cn@163.com  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2011-09-07 20:47 lhj
研究下  回复  更多评论
  

# re: FusionCharts在用JSP自定义导出pdf,doc,xsl格式的图表混编文件【原创】 2011-12-14 09:44 zgl
跪求工程Demo啊,大侠!!zgl217@163.com  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: