gpt4 book ai didi

java - 如何使用在 Tomcat 上运行的 servlet 执行文件 I/O

转载 作者:搜寻专家 更新时间:2023-10-31 19:42:03 24 4
gpt4 key购买 nike

我正在编写一个 Java servlet,使用 Tomcat 作为容器,它创建 PDF 文件并将其提供给最终用户。目前,PDF 文件是在内存中创建的,并作为对 POST 的响应写出。

我想稍微改变一下,以便将 PDF 文件写入磁盘(以便稍后可以再次提供它们)。我无法找到合适的“操作方法”来执行此操作。

如何配置我的 servlet 以在服务器端的目录中写入和读取文件?根据我的阅读,我认为我需要将该目录定位在我的“爆炸”位置之外的某个位置出于安全原因,webapp"位于 $CATALINA_BASE 中,我需要使用 Context 或类似的东西。

最佳答案

您可以只使用通常的 FileOutputStreamFileInputStream分别写入磁盘和从磁盘读取的类。将您的 PDF 生成器更改为写入 FileOutputStream,并将您的文件 servlet 更改为从 FileInputStream 读取。

而且,事实上,您希望将这些文件存储在 web 应用程序之外,否则当您重新部署 web 应用程序时,这些文件都会丢失。你不需要 ServletContext , 它只对 convert 有用绝对磁盘文件系统路径的相对 Web 路径。当你将它存储在 webapp 之外时你不需要它,你已经知道绝对磁盘文件系统路径。

另见

关于java - 如何使用在 Tomcat 上运行的 servlet 执行文件 I/O,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3444944/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com