`
steven2011
  • 浏览: 31781 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

java导入导出pdf文档实践

 
阅读更多

1:mysql数据库存储pdf流字段为:filed name:filestream type:MEDIUMBLOB

2:导入pdf文件到mysql 数据库

privatevoiddoWrite()...{
try...{

if(newFile("D:/Sun.pdf").exists())...{
FileInputStreamfis
=newFileInputStream(newFile(
"D:/Sun.pdf"));
PreparedStatementpstmt
=cnn
.prepareStatement(
"insertintotb(filestream)values(?)");
pstmt.setBinaryStream(
1,fis,1024);
pstmt.execute();
}

}
catch(Exceptione)...{
e.printStackTrace();
}

}

3:从mysql数据库读取pdf流到网页客户端显示

privatevoiddoRead(HttpServletRequestrequest,HttpServletResponseresponse)...{
try...{
ByteArrayOutputStreamba
=newByteArrayOutputStream();
Statementstmt
=cnn.createStatement();
ResultSetrs
=stmt.executeQuery("selectfilestreamfromtbwhereid=1");
rs.next();
InputStreamis
=rs.getBinaryStream(1);
intc;
while((c=is.read())!=-1)
ba.write(c);
Documentdocument
=newDocument(PageSize.A4,36,36,36,36);
PdfWriterwriter
=PdfWriter.getInstance(document,ba);
//document.close();
response.setContentType("application/pdf");
response.setContentLength(ba.size());
ServletOutputStreamout
=response.getOutputStream();
ba.writeTo(out);
out.flush();
}
catch(Exceptione)...{
e.printStackTrace();
}

}

4:下载jar包:itext-2.0.6.jar iTextAsian.jar(此包是解决中文乱码用)

5:完整源码

importjava.io.BufferedInputStream;
importjava.io.ByteArrayOutputStream;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.Statement;

importjavax.servlet.ServletException;
importjavax.servlet.ServletOutputStream;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;

importcom.lowagie.text.Document;
importcom.lowagie.text.DocumentException;
importcom.lowagie.text.PageSize;
importcom.lowagie.text.Paragraph;
importcom.lowagie.text.pdf.PdfWriter;

publicclassPDFGenerateServletextendsHttpServlet...{
privateConnectioncnn=null;

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsIOException,ServletException...{

try...{
InitConnection();
Strings
=request.getParameter("method");
if(s.equals("w"))...{
doWrite();
}

if(s.equals("r"))...{
doRead(request,response);
}

/**//*
*Statementstmt=cnn.createStatement();ResultSetrs=
*stmt.executeQuery("");InputStreamis=rs.getBinaryStream("");
*intc;while((c=is.read())!=1)ba.write(c);//ba=new
*ByteArrayOutputStream(rs.getBlob(""));PdfWriterwriter=
*PdfWriter.getInstance(document,ba);document.open();
*document.add(newParagraph("HelloWorld"));
*/


}
catch(Exceptione)...{

}


}


publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsIOException,ServletException...{
doGet(request,response);
}


privatevoiddoWrite()...{
try...{

if(newFile("D:/Sun.pdf").exists())...{
FileInputStreamfis
=newFileInputStream(newFile(
"D:/Sun.pdf"));
PreparedStatementpstmt
=cnn
.prepareStatement(
"insertintotb(filestream)values(?)");
pstmt.setBinaryStream(
1,fis,1024);
pstmt.execute();
}

}
catch(Exceptione)...{
e.printStackTrace();
}

}


privatevoiddoRead(HttpServletRequestrequest,HttpServletResponseresponse)...{
try...{
ByteArrayOutputStreamba
=newByteArrayOutputStream();
Statementstmt
=cnn.createStatement();
ResultSetrs
=stmt.executeQuery("selectfilestreamfromtbwhereid=1");
rs.next();
InputStreamis
=rs.getBinaryStream(1);
intc;
while((c=is.read())!=-1)
ba.write(c);
Documentdocument
=newDocument(PageSize.A4,36,36,36,36);
PdfWriterwriter
=PdfWriter.getInstance(document,ba);
//document.close();
response.setContentType("application/pdf");
response.setContentLength(ba.size());
ServletOutputStreamout
=response.getOutputStream();
ba.writeTo(out);
out.flush();
}
catch(Exceptione)...{
e.printStackTrace();
}

}


privatevoidInitConnection()...{
try...{
Class.forName(
"com.mysql.jdbc.Driver");
cnn
=DriverManager.getConnection(
"jdbc:mysql://localhost:3306/jms","root","aastocks");

}
catch(Exceptione)...{

}

}

}

分享到:
评论

相关推荐

    java导出PDF文件的例子

    Java导出PDF文件是开发...总之,Java导出PDF文件涉及的主要知识点包括:iText库的使用、PDF文档结构、内容添加方法、数据库操作以及参数处理。通过熟练掌握这些技能,你可以轻松地在Java项目中生成各种复杂的PDF文档。

    java实现excel导入导出.pdf

    Java 实现 Excel 导入导出 Java 是一种流行的编程语言,Excel 是一种常用的电子表格软件。在 Java 中,实现 Excel 导入导出可以使用多种方式,本文将介绍使用 JXL 和 POI 两个库实现 Excel 导入导出的方法。 使用 ...

    easypoi导入导出excel表格.pdf

    首先,我们将要讲述的是easypoi这一Java库在处理Excel表格导入导出功能的应用。在Java开发中,对于数据的导入导出,尤其是Excel表格,是一种非常常见的需求。而easypoi为我们提供了简洁的方式来实现这一功能。 ### ...

    java导出docx导出pdf

    Java编程语言在处理文档转换方面提供了强大的支持,...综上所述,"java导出docx导出pdf"的项目提供了一个Java解决方案,通过利用Apache POI和iText库,实现了从Docx到PDF的快速转换,适用于各种需要文档转换的场景。

    java代码导入导出Excel

    在Java编程环境中,处理Excel文件是一项常见的任务,无论是数据分析、数据导入导出还是报表生成。在给定的压缩包文件中,提供了实现这一功能所需的库和示例代码。以下是关于"java代码导入导出Excel"的相关知识点: ...

    JAVA ITEXT 导出试卷

    它涉及的知识点包括Java编程基础、iText库的使用、PDF文档结构的理解以及可能的数据解析和文件操作。通过这样的系统,教育从业者能够快速高效地创建和管理各类考试试卷,体现了Java在教育技术领域的应用潜力。

    java导出PDF文件实例.rar

    Java导出PDF文件是开发过程中常见的一项任务,特别是在生成报告、文档或发票等场景下。这个"java导出PDF文件实例.rar"压缩包提供了一个实际的示例,帮助开发者了解如何在Java环境中创建PDF文件。它包括了必要的jar库...

    Java导入导出Oracle[文].pdf

    本文件“Java导入导出Oracle[文].pdf”显然提供了一种利用Java程序来实现Oracle数据库的导入(exp)和导出(imp)的方法,并涉及到创建表空间、用户以及给用户授权的操作。以下是根据提供的代码片段详细解释这些知识...

    Highcharts在Java后台导出图片到PDF和EXCEL文件中示例代码

    Highcharts在Java后台导出图片到PDF和EXCEL文件中示例代码,程序放到MyEclipse8.6中编译后可直接放到Tomcat6及以上版本运行,程序中含有jar包,下载后不用操心到处找jar包,在MyEclipse8.6里建立普通的Web工程就可以...

    execl导入导出

    "Excel导入导出"这一主题涵盖了如何将数据从外部源导入到Excel工作表,以及如何将Excel数据导出到其他格式或系统中。以下是对这个主题的详细阐述: **一、Excel数据导入** 1. **CSV导入**:CSV(逗号分隔值)是一...

    java使用itext实现pdf文件下载

    在Java开发中,生成和处理PDF文档是一项常见的需求。Itext是一个强大的库,它允许开发者在Java环境中创建、编辑和修改PDF文档。本教程将详细讲解如何使用Itext库实现PDF文件的下载,包括通过系统路径下载和通过...

    java Excel文件转PDF文件

    Apache POI是Java中处理Microsoft Office格式文件(如Excel)的库,而iText则是用于创建和编辑PDF文档的库。 首先,我们需要导入必要的库。在项目中添加Apache POI和iText的依赖。如果你使用的是Maven,可以在pom....

    java实现导出excel、word、 pdf

    在Java编程中,导出Excel、Word和PDF是常见...总之,Java通过各种库如Apache POI和iText提供了强大的能力来处理Excel、Word和PDF文件的导出。理解并熟练运用这些库,可以帮助你实现高效的数据导出功能,满足业务需求。

    java URL转PDF文件(完美支持中文)

    首先,`itext`是一个流行的Java库,用于处理PDF文档。它提供了创建、修改和操作PDF文档的功能。在URL转PDF的过程中,我们可以利用`itext`来生成PDF并添加网页内容。在处理中文字符时,关键在于设置正确的字符编码,...

    java导出word、excel、pdf、txt文件,同时兼容office2003和office2007

    3. **导出PDF文档**: iText是一个强大的PDF库,可以创建、修改和操作PDF文件。通过创建Document对象,添加Paragraphs、Tables等,然后写入输出流。创建一个简单的PDF页面: ```java Document document = new ...

    iReport+java导出pdf/byte[]

    标题 "iReport+Java 导出 PDF/byte[]" 指的是使用 iReport 工具结合 Java 语言来生成 PDF 文件并将其以字节数组(byte[])的形式处理。iReport 是一个开源的报表设计工具,常用于 JasperReports 库,能够帮助开发者...

    java使用EasyExcel导入导出excel(csdn)————程序.pdf

    Java使用EasyExcel进行Excel的导入导出是一种高效且便捷的方式,尤其对于大数据量的处理,EasyExcel能够很好地解决内存溢出的问题。以下是关于EasyExcel在Java中应用的详细讲解: 一、准备工作 在使用EasyExcel之前...

    导出 Excel 以及转化为 PDF 导出

    本篇将深入探讨如何使用 Java 库 `easypoi` 和 `Spire.XLS.Free` 实现 Excel 的导出及将其转化为 PDF 文件的过程。 首先,`easypoi` 是一个基于 Apache POI 的 Java 框架,专门用于处理 Office 文档,包括 Excel。...

    SpringBoot整合poi实现Excel文件的导入和导出.pdf

    在SpringBoot项目中,我们经常需要处理Excel文件的导入与导出功能,这在数据分析、数据交换等场景中尤其常见。Apache POI 是一个流行的Java库,它允许开发者读写Microsoft Office格式的文件,包括Excel。下面我们将...

    java 用iText导出PDF小例子

    iText广泛用于报告生成、数据导入导出等多种场景中,是Java开发中不可或缺的工具之一。 接下来,我们将具体介绍一个使用iText库来导出PDF文件的小例子。尽管文章提供的内容中,实际的Java代码没有直接给出,但可以...

Global site tag (gtag.js) - Google Analytics