有不少报表工具,可以生成.pdf或cvs还有html。html当然是web报表的首选。
解决方案 »
- 如何捕获:No action config found for the specified url
- java中出错啦
- 请教高手hibernate+spring 对于里面saveOrUpdate()方法,session不能同步数据库问题?
- 将JSP中的值传入javaBean错误
- 如何保存填写一半的页面
- getString("字段名")出来的东西为什么不等于 字符串呢 "abcdef"
- 我也來散分
- jsp留言板源码
- SpringBoot项目部署到Tomcat时报启动错误
- servlet取到了数据,传到jsp,jsp怎么都取不到?
- 有关上传文件的路径问题
- 帮帮我啊,本是小问题,对我却是大问题(resin3.0语mysql3.23的驱动jdbc怎么连接)
form.setField("Name", "裴贺先");
在这个地方用数据库中取出来的数据替换就可以了。
html还用第三方的组件吗?直接用jsp做出来不就行了? 但是html在IE中打印会带着IE的信息的,根本就不能用来做正式的官方报表。
我们做的程序就是先用jsp显示一个报表的统计结果,结果想打印再用itext生成PDF报表。
为什么要用pdf来向数据库提交数据?
那么整个解决方案就是用jsp象pdf提交数据,再把pdf镶嵌在html中显示出来,然后通过pdf的打印系统进行打印,是吗?
这个方案是否存在以下几个问题:
1.客户端没有安装Adobe Acrobat。
2.为每一个报表创建一个模板的过程有点麻烦。要通过word转pdf,再添加表单域。
3.手工添加表单域的方法不仅麻烦,而且丧失灵活性。
一点建议:
是否可以设计一些通用模板的程序,实现根据字段自动画表格线,自动添加表单域。这样其余的报表就可以只对模板设置一个数据源的方法,便生成不同的报表了。
asp中通过水晶报表可以实现以上功能,java里也应该可以做到。
1,现有的web报表平台,多数都是通过生成PDF来到客户端进行打印的,如果是用html,也完全没有必要做这东西。
2.如果您以前写过itext的程序,您就会知道我的方法已经把人们从原始社会带到工业时代了。以前生成PDF时画表格是一个cell一个cell的用程序画出来的。
3.手工添加表单域确实是个问题,因为如果报表格式发生了变化,需要从word重新生成模板PDF,这确实是个问题。
我不明白的是“一个cell一个cell的用程序画出来的。”不好吗,这样比较好动态确定要画多少个cell以及怎么画啊。
不画cell,直接画表格线可不可以。
有没有函数可以动态加表单域的? ps:我没用过itext,所以说的东西难免太有想象力,呵呵。
如果你做几个稍稍复杂的报表你就知道了。你应该知道,并不是所有的报表当中的表格都是很规则的,比如人才市场的个人简历,有时这些表格线是错综复杂的,用cell去画吧,累死。
用程序生成是件傻事,我就干过,费时费力,而且客户的要求都是非常变态的,你从理论上想象不到,所以实际应用中不可能作出一个通用的东西,否则网上应该到处都有了。水晶报表我也用过,感觉本身就不爽,我们公司专作mis,从来不用他。
up!!!!!!!!!11
我想问一下
import com.lowagie.text.pdf.PdfWriter,这里的PdfWriter类在哪里啊?我只找到PdfWriter.html文件啊!谢谢!
会不会是因为classpath中不能找到这两个jar文件呢?
晕死啦,这个是用来从数据库取出数据来生成PDF报表的,如果你实在想提交到数据库里面的话,我告诉你, 可以! 看一下我提供的压缩包的文档,里面有例子。可是我实在不明白你们为什么想在pdf中输入,然后再提交到数据库中?难道你们想用pdf做UI界面?
那里只有两个jar包,itext-1.01.jar和iTextAsian.jar,另外的两个压缩包都是些html文档啊!并没有PdfWriter这个包啊!
老大,帮帮我的忙,我急需要用到你的程序!还有各位楼上的,有谁已经能够正常使用这个程序了,给小弟指点一下迷津吧,谢谢……
这不包显然不是jdk当中的东西,你可以到这里看看别的版本的itext能不能行?
我们jdk1.3.1,1.4以及resin 2.04 2.06 2.11中测试都没有问题,tomcat我一次也不有用过,等我有空了试一下,我想应该不会出这么大的问题,如果你着急用,先下一个resin确定一下是不是jdk的问题,我们一起解决一下这个问题。
今天我正在做从数据库取数据生成多行报表的例子呢,等我先把这个例子做完吧。
http://sourceforge.net/projects/itext/
只需要把itext-1.01.jar和iTextAsian.jar加到classpath中,就可以正确运行了!
。。
就是你的web应用程序的根目录,其实你执行一下这个servlet就明白了,你看这个servlet是从哪个目录中找这个文件就把东西放到那里。
你是把查询的结果用.pdf格式存档,
是放在web服务器端的,
如果有多个用户一起查询,会起冲突?
放的只是模板啦,你没有看到后面真正生成结果pdf时,是生的数据流直接返回来的吗?根本就不用向服务器硬盘写数据的。
现在我还想请教一个问题:
在aa.jsp上单击一个button,服务器自动从数据库中取出数据来生成PDF报表,并且调用该pdf的打印程序,进行打印工作。可以实现吗?
不好意思
看错了!
我现在正在做从数据库中取多行数据进行打印的例子呢。
你有完整的jdk帮助文档吗?
有的话,给我一份好吗?
form.setField("No1","不干净");
form.setField("No2","不干净");
form.setField("No3","不干净");在pdf上显示时,出现了字体不一样大小的情况,这是怎么回事?
是因为你在acrobat中画表单域时,画的有大有小。