java中getRealPath("/")和getContextPath()的区别

一.以下是在servlet中测试的。

二.运行结果如下(其中myfile文件夹是不存在的)。

三.总结。

1.getRealPath("/")方法返回的是项目在服务器的绝对路径,而getRealPath("WEB-INF/myfile")返回的是包含一个给定虚拟路径的绝对路径,其中/myfile是虚拟的。

2.getContextPath()方法返回的是项目相对路径,并不会返回其绝对的路径,就是说并不知道项目在哪个位置。

  • 12
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java PageOffice可以通过使用PageOffice插件来实现Word文档合并。下面是一个简单的示例代码: ``` @RequestMapping("/mergeWord") public void mergeWord(HttpServletRequest request, HttpServletResponse response) throws Exception { response.setContentType("application/pdf"); response.setCharacterEncoding("utf-8"); response.setHeader("Content-Disposition", "attachment;filename=" + new String(("合并后的文档.doc").getBytes(), "iso8859-1")); FileSaver fs = new FileSaver(request, response); // 打开模板文件 PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); poCtrl1.setServerPage(request.getContextPath() + "/poserver.zz"); poCtrl1.addCustomToolButton("保存", "Save()", 1); String fileName = "template.doc"; String filePath = request.getSession().getServletContext().getRealPath("/WEB-INF/doc/") + fileName; poCtrl1.webOpen(filePath, OpenModeType.docNormalEdit, "Tom"); // 打开要合并的文件 PageOfficeCtrl poCtrl2 = new PageOfficeCtrl(request); poCtrl2.setServerPage(request.getContextPath() + "/poserver.zz"); poCtrl2.addCustomToolButton("保存", "Save()", 1); String fileName2 = "document1.doc"; String filePath2 = request.getSession().getServletContext().getRealPath("/WEB-INF/doc/") + fileName2; poCtrl2.webOpen(filePath2, OpenModeType.docNormalEdit, "Tom"); // 合并两个文档 poCtrl2.getDocument().insertDocument(poCtrl1.getDocument().getBookmarkDocument()); // 保存合并后的文档 fs.saveToFile(request.getSession().getServletContext().getRealPath("/WEB-INF/doc/合并后的文档.doc")); fs.close(); } ``` 首先,我们打开一个模板文件和要合并的文件,然后使用 `insertDocument` 方法将它们合并成一个文档,并保存合并后的文档。最后,通过 `FileSaver` 将合并后的文档下载到本地。 注意,上述代码的 `PageOfficeCtrl` 是PageOffice插件的控件,用于在Web页面显示Office文档。 `OpenModeType.docNormalEdit` 表示以编辑模式打开Office文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值