下载与生产pdf文件

来源:互联网 发布:mac pc区别 编辑:程序博客网 时间:2024/04/30 19:11
这里应用servlet原理,给servlet返回的jsp加上响应头的类型:.pdf,浏览器识别自动变为下载

<servlet>
<servlet-name>downloadFile</servlet-name>
<servlet-class>com.wondersgroup.qdyth.p1.common.action.DownloadFileAction</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>downloadFile</servlet-name>
<url-pattern>/downloadFile</url-pattern>
</servlet-mapping>

//组装pdf map
DownloadFileService模板文件生成

getDataSource//组装map

createpdf//用map创建pdf


ServletOutputStream out = response.getOutputStream();
       response.reset();
       response.setContentType("application/pdf");
       response.setHeader("Content-Disposition", "attachment;filename=" +policy_no +".pdf");
       response.addHeader("Content-Length", "" + targetFile.length());
       File url = new File(targetFile_path);
       FileInputStream bis = new FileInputStream(url);
       BufferedOutputStream bos = new BufferedOutputStream(out);
       byte[] buff = new byte[2048];
       int bytesRead;
       while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {
           bos.write(buff, 0, bytesRead);
       }
       response.setStatus( response.SC_OK );
       response.flushBuffer();
       bis.close();
       bos.close();
原创粉丝点击