使用itext生成pdf

如果每次都在服务端生成一个PDF文件给用户,不仅麻烦,而且浪费服务器资源,最好的方法就是以二进制流的形式输送到客户端。

1)JSP输出:

response.setContentType( "application/pdf" );

Document document = new Document();

ByteArrayOutputStream buffer= new ByteArrayOutputStream();

PdfWriter writer=PdfWriter.getInstance( document, buffer );

document.open();

document.add(new Paragraph("Hello World"));

document.close();

DataOutput output =new DataOutputStream( response.getOutputStream() );

byte[] bytes = buffer.toByteArray();

response.setContentLength(bytes.length);

for( int i = 0;i < bytes.length;i++ ){

output.writeByte( bytes[i] );

}

%>

2)servlet输出,稍微改造下就可以使用在struts中:

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

import com.lowagie.text.*;

import com.lowagie.text.pdf.*;

public void doGet

(HttpServletRequest request,

HttpServletResponse response)

throws IOException,ServletException

{

Document document =

new Document(PageSize.A4, 36,36,36,36);

ByteArrayOutputStream ba

= new ByteArrayOutputStream();

try

{

PdfWriter writer =

PdfWriter.getInstance(document, ba);

document.open();

document.add(new

Paragraph("Hello World"));

}

catch(DocumentException de)

{

de.printStackTrace();

System.err.println

("A Document error:" +de.getMessage());

}

document.close();

response.setContentType

("application/pdf");

response.setContentLength(ba.size());

ServletOutputStream out

= response.getOutputStream();

ba.writeTo(out);

out.flush();

}

java jsp生成pdf_如何使用jsp、servlet输出iText生成的pdf相关推荐

  1. 创建pdf java 字体_如何使用自定义字体从servlet使用iText XMLWorker创建PDF?

    使用iText / XMLWorker示例(大多数是 this one),我可以轻松编写能够使用我自己的额外字体从HTML代码创建PDF文件的简单应用程序,但是只要尝试在某些Web服务代码中使用我的东 ...

  2. JSP学习笔记(四十九):抛弃POI,使用iText生成Word文档

    POI操作excel的确很优秀,操作word的功能却不敢令人恭维.我们可以利用iText生成rtf文档,扩展名使用doc即可. 使用iText生成rtf,除了iText的包外,还需要额外的一个支持rt ...

  3. jsp与java的关系_jsp教程中:jsp与servlet的区别和关系

    jsp教程上:我们一定学了servlet,也学习了jsp,那么jsp与servlet的区别是什么呢,jsp与servlet又有什么关系呢?下面我们先创建一个demo.jsp的页面,然后tomcat运行 ...

  4. java与jsp的关系_浅谈servlet与jsp的关系

    servlet是用java语言编写的,是一个java类.主要功能是用来接受.处理客户端的请求,并把处理结果返回到客户端显示.Jsp是servlet发展后期的产物.在没有jsp之前,servlet利用输 ...

  5. Java Web学生成绩管理系统(JSP+Servlet+JDBC+Dao)

    学完java web后,期末期间用所学知识写了一个简单的学生管理系统,现在有空整理分享下. 注意:本文章仅供参考和学习,源码和数据库设计在文章的底部,点击展开然后往下翻就可以找到,其实数据库就六张表, ...

  6. DW-CHEN的Java点滴记录JavaWeb之HTTP协议/Servlet/Cookie/Session/JSP/EL/JSTL/Filter/Listener

    JavaEE规范 JavaEE(Java Enterprise Edition):Java企业版,早期叫J2EE(J2EE的版本从1.0到1.4结束):现在Java版本从JavaEE 5开始 Java ...

  7. java项目如何分工合作,JavaWeb基础 jsp+servlet分工合作的简单示例

    礼悟: 好好学习合思考,尊师重道存感恩.叶见寻根三返一,江河湖海同一体. 虚怀若谷良心主,愿行无悔给最苦.读书锻炼强身心,诚劝且行且珍惜. javaEE:7 javaSE:1.8 JSTL:1.2.2 ...

  8. java中的post的作用,JSP、Servlet中get请求和post请求的区别总结

    在学习JavaWeb最初的开始阶段,大家都会遇到HttpServlet中的doGet和doPost方法.前两天看<Head First Servlets & JSP>看到其中讲关于 ...

  9. java生成excel中文乱码,JSP应用导出Excel报表的简单实现以及中文乱码彻底解决(HTML)...

    一,先新建一个excel文件,调整格式(就是你所想要显示的格式), 二,把刚才新建的excel文件令存为.html(demo.html)文件, 三,新建一个jsp页面, 在该JSP页面头部设置resp ...

最新文章

  1. java中形参可变的方法
  2. R语言dplyr包使用case_when函数和mutate函数生成新的数据列实战:基于单列生成新的数据列、基于多列生成新的数据列
  3. Uchome的登录验证机制
  4. mysql_connect报告“No such file or directory“错误的解决方法
  5. Uncaught SyntaxError - unexpected end of input
  6. PX4代码解析(1)
  7. mqtt js 中乱码_ES6中模块导入遇到的问题及其解决办法
  8. 小米air耳机重新配对_平价蓝牙耳机品牌,百元平价蓝牙耳机推荐
  9. 服务器进bios修改启动顺序,服务器进入bios设置u盘启动
  10. CVE-2017-4901 VMware虚拟机逃逸漏洞分析【Frida Windows实例】
  11. 带视频加密功能的视频播放器
  12. 使用treeNMS管理及监控Redis
  13. 程序员必备的网站推荐
  14. linux man手册更新,linux man手册介绍【manual】
  15. STM32F103 实现 简易闹钟小程序
  16. 运用js计算个人税收
  17. (八)《跟我一起写Makefile》之使用函数
  18. 淘宝技术四面,本以为三面过了就完了,没想到还有个交叉面试。
  19. Java 进程启停及诊断 Jarboot大改版、焕然一新
  20. 国产Linux系统深度商店应用更新记录汇总(2021-12)

热门文章

  1. 软件工程第三次作业-功能测试
  2. 一张图搞懂容器所有操作 - 每天5分钟玩转 Docker 容器技术(26)
  3. 安卓MP3播放器开发实例(3)之进度条和歌词更新的实现
  4. 使用nginx+Apache负载均衡及动静分离
  5. R 调用 python
  6. 【原创】自动更新程序2--更新程序的主窗体(技术:spring.net+三层架构+webservice+IrisSkin2换肤)...
  7. looper message handler之间的关系
  8. “2011年度IT博客大赛”支持fangmin的。请投下您最宝贵的一票
  9. Windows Server 2008十大新功能
  10. 微软北大联合提出换脸AI和脸部伪造检测器,演绎现实版「矛与盾」?