到官网下载 pdf.js 插件并解压 (地址: http://mozilla.github.io/pdf.js/ )

将解压的文件放到项目根目录。

访问本地:localhost:8080/web/viewer.html。成功显示默认pdf。

我们需要做的就是在项目路径后面参数拼接,格式如下

localhost:8080/web/viewer.html?file=浏览器中文件的地址

eg:localhost:8080/web/viewer.html?file=http://localhost:8080/pdf/demo/1.pdf

以下代码参考,主要就是路径,一定要对(根据自己的实际情况修改路径)


public String ckPdf(){

  HttpServletRequest req =ServletActionContext.getRequest();

  HttpServletResponse res = ServletActionContext.getResponse();

//	System.out.println(req.getRequestURL());

    String path=req.getScheme()+"://"+req.getServerName()+":"+req.getServerPort()+req.getContextPath()+"/";//项目地址

//	System.out.println(path);   //项目地址

    final String pdfpath="D:/java/apache-tomcat-6.0.43/webapps/ycfc";//pdf绝对地址前面路径

    ysxk = ysxkService.getById(ysxkId);

    if(ysxk.getPdfurl()==null){

    return null;

    }

        File file = new File(ysxk.getPdfurl());

        // 取得文件名。

        String filepath = file.getAbsolutePath();//得到pdf绝对路径

//	        System.out.println("filepath:"+"    "+filepath);

        filepath= filepath.replace("\\","/");//替换斜杠

        String htpdfpath=filepath.substring(pdfpath.length());//截取后面内容,去除pdf绝对路径前面地址

//	        System.out.println(filepath);

        String ckpdfpath=path+htpdfpath;//合成服务器pdf路径

//	return "redirect:"+path+"/pdf/web/viewer.html?file="+ckpdfpath;

        try {

res.sendRedirect(path+"pdf/web/viewer.html?file="+ckpdfpath);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}  

        

return null;

}


最后修改:2022 年 07 月 16 日
如果觉得我的文章对你有用,请随意赞赏