最近有需求要实现在网页直接查看pdf,word,excel文件。但是实际当中并没有很好的开源插件供我们使用,确实有一些付费的插件不错,也很好用,但是对于我来说都不适合。

现在只是单纯的找到了围魏救赵的方法。

就是先实现显示pdf文件,其他文件用别的方式去转成pdf。虽然这个方法确实不好,但是也是没有办法的办法了,如果以后能有更好的,那就再发布别的吧。

这里我就直接介绍pdf的显示方法。

直接上干货。

首先在E:\tomcat8\webapps这个目录下面拷贝下面这个文件

http://yunpan.cn/cwmjKF6jKY6Kb  访问密码 c14a
就像这样

然后打开tomcat

然后浏览器访问http://localhost:8080/generic/web/viewer.html

看能否出现pdf插件

然后用记事本打开generic/web/viewer.js文件

修改为var DEFAULT_URL = '';

然后你的任何项目中给一个链接http://localhost:8080/generic/web/viewer.html?file=http://localhost:8080/resources/spring.pdf

只要在http://localhost:8080/generic/web/viewer.html后面给一个?file=后面跟需要访问的pdf文件的地址,打开这样一个链接就能直接在网页中在写显示pdf文件了。

需要注意的是浏览器必须支持HTML5

顺便提一句这个是一个开源的插件,火狐浏览器自带也有,所以火狐浏览器打开pdf不用这个也是可以的,但是IE就不行了。所以需要这个插件。这个插件还是很不错的,很容易上手,耦合性也不高,暂时还没有什么bug。

思路和资源来自下面两篇帖子,谢谢大神。

http://www.cnblogs.com/kagome2014/archive/2015/05/26/kagome2014001.html

http://www.cnblogs.com/studyzy/p/5338398.html

javaWeb项目中如何实现在线查看pdf文件的更多相关文章

  1. laravel项目中手机浏览器在线阅读pdf文件-->PDFJS插件

    第一步:下载链接:http://mozilla.github.io/pdf.js/getting_started/#download 第二步:将下载的文件放在项目中. 第三步:在项目中想要预览的地方给 ...

  2. 浏览器在线查看pdf文件 pdf.js的使用教程

    谷歌浏览器可以直接在线查看pdf,而IE内核浏览器无法在线查看,默认是下载. 这里用到的是pdf.js,不仅支持IE内核浏览器,而且兼容手机查看pdf 官网地址:http://mozilla.gith ...

  3. Office Web App2013 在线查看PDF文件

    经常会有客户问,在SharePoint中,如何在浏览器中查看与编辑文档,通常给出的解决方案是集成Office Web App. 而在实际应用过程中,客户通常会要求实现PDF文件在线查看,对于PDF文件 ...

  4. 项目中的那些事---下载pdf文件

    最近做了一个下载pdf文档的需求,本以为使用HTML5中<a>标签的属性download就能简单搞定,不料IE竟然不支持这一简单粗暴的H5新特性,而是直接在网页中打开, 于是各种搜索之后得 ...

  5. 使用PDF.JS在线查看PDF

    过程简单粗暴. 第一步:下载源码https://github.com/mozilla/pdf.js 第二步:将源码拷贝进项目中,可以新建一个PDFShow文件夹存放代码 第三步:修改viewer.js ...

  6. 通过调用API在JavaWeb项目中实现证件识别

    本文详细介绍自己如何在JavaWeb项目中通过调用API实现证件识别. 一,Face++使用简介 二,两种方式(图片URL与本地上传)实现证件识别 一,Face++使用简介 Face++旷视人工智能开 ...

  7. log4j在javaWeb项目中的使用

    在前边的文章中对log4j的配置文件进行了说明,今天介绍如何在普通的javaWeb项目中使用log4j. 在日常的开发过程中,日志使用的很频繁,我们可以利用日志来跟踪程序的错误,程序运行时的输出参数等 ...

  8. Druid使用起步—在javaWeb项目中配置监控 连接池

    当我们在javaWEB项目中使用到druid来作为我们的连接池的时候,一定不会忘了添加监控功能.下面我们就来看一下,在一个简单的web项目中(尚未使用任何框架)我们是如果来配置我们的web.xml来完 ...

  9. JavaWeb 项目中的绝对路径和相对路径以及问题的解决方式

    近期在做JavaWeb项目,总是出现各种的路径错误,并且发现不同情况下 /  所代表的含义不同,导致在调试路径上浪费了大量时间. 在JavaWeb项目中尽量使用绝对路径  由于使用绝对路径是绝对不会出 ...

随机推荐

  1. Python3 Socket网络编程

    Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯. socket起源于UNIX,在 ...

  2. 关于repaint(重绘)和reflow( 回流)

    repaint就是重绘,reflow就是回流.repaint主要是针对某一个DOM元素进行的重绘,reflow则是回流,针对整个页面的重排 严重性: 在性能优先的前提下,性能消耗 reflow大于re ...

  3. bzoj 1061 志愿者招募 有上下界费用流做法

    把每一天看作一个点,每一天的志愿者数目就是流量限制,从i到i+1连边,上下界就是(A[i],+inf). 对于每一类志愿者,从T[i]+1到S[i]连边,费用为招募一个志愿者的费用,流量为inf.这样 ...

  4. Office2016打开doc字符间距过小

    缺少字体.........装上就行,放到windows/fonts目录下,自动安装了

  5. sift特征源码

    先贴上我对Opencv3.1中sift源码的注释吧,虽然还有很多没看懂.先从detectAndCompute看起 void SIFT_Impl::detectAndCompute(InputArray ...

  6. form表单的属性标签

    form表单的常用标签 表单: <form id="" name="" method="post/get" action=" ...

  7. Angular datetime format

    <!DOCTYPE html> <html lang="en"> <head> <script type="text/javas ...

  8. RabbitMQ学习

    参考链接:http://www.cnblogs.com/leocook/p/mq_rabbitmq_0.html

  9. gradle多模块开发

    参考文档:gradle的官方userguide.pdf文档的chapter 55和chapter 56.gradle的多模块或项目开发一定不会比maven差,在我看来!大的项目分成多个模块来开发是常事 ...

  10. Python数据分析笔记目录

    速查笔记 使用实例 Pandas-数据导入 (未完成) Pandas-数据探索 基础属性 shape indexs columns values dtype/dtypes 汇总和计算描述统计 coun ...