springboot开发指南（七）——整合pdf.js预览打印下载pdf文件项目简介：需要在浏览器预览pdf文件，并能打印下载
目录
一.项目效果
二.使用的技术和项目依赖
三. 前端pdfview.html
四.后端PreviewController
需要源码，请加微信号，进技术交流群，发送springboot109，免费获取此文章源码
一.项目效果
单击文字后，出现如下
二.使用的技术和项目依赖
1.项目使用pdf.js插件
(1)pdf插件下载以及预览请点击。http://mozilla.github.io/pdf.js/
(2)将PDF插件目录放在工程里
2.项目依赖
themleaf ,web
三. 前端pdfview.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>预览PDF文件</title> </head> <script> function previewPDF() { window.open("asserts/js/web/viewer.html?file=/preview"); } </script> <body> <a onclick="previewPDF()">Click here to preview the PDF</a> </body>
注意：open地址是工程中pdf插件文件viewer.html地址加上file=/。如果open("preview"),则无法有打印下载效果。
四.后端PreviewController
@Controller public class PreviewController { @RequestMapping("/pdfview") public String index() { return "pdfview"; } @RequestMapping(value = "/preview", method = RequestMethod.GET) public void pdfStreamHandler(HttpServletRequest request, HttpServletResponse response) { System.out.println("=================preview=============="); //PDF文件地址 File file = new File("/Users/whale/Documents/aaa.pdf"); if (file.exists()) { byte[] data = null; FileInputStream input=null; try { input= new FileInputStream(file); data = new byte[input.available()]; input.read(data); response.getOutputStream().write(data); } catch (Exception e) { System.out.println("pdf文件处理异常：" + e); }finally{ try { if(input!=null){ input.close(); } } catch (IOException e) { e.printStackTrace(); } } } } }