需要通过可用数据创建一个txt文件,然后需要将该文件作为rest响应发送。应用程序部署在container中。我不想将其存储在container上的任何位置或spring boot资源中的任何位置。有没有什么方法可以在运行时缓冲区创建文件,而不提供任何文件位置,然后在rest响应中发送它?应用程序是生产应用程序,所以我需要一个安全的解决方案
需要通过可用数据创建一个txt文件,然后需要将该文件作为rest响应发送。应用程序部署在container中。我不想将其存储在container上的任何位置或spring boot资源中的任何位置。有没有什么方法可以在运行时缓冲区创建文件,而不提供任何文件位置,然后在rest响应中发送它?应用程序是生产应用程序,所以我需要一个安全的解决方案
4条答案
按热度按时间bejyjqdl1#
文件就是文件,你用错词了--在java中,数据流的概念,至少对于这类工作,被称为
InputStream
或OutputStream
。不管你有什么方法,只要它接受一个
File
就行了。一个文件就是一个文件。你不能伪造它。但是,和开发人员谈谈,或者检查一下替代方法,因为在java中,数据处理完全没有理由需要一个File
,它应该需要一个InputStream
,或者可能需要一个Reader
。或者甚至有一个方法可以给你一个OutputStream
或Writer
。所有这些东西都很好--它们是抽象的,让你只向它发送数据,从一个文件,一个网络连接,或者组成一个整体,这是你想要的。一旦你有了这样的一个,它就变得微不足道了。例如:
或者举例来说:
m1m5dgzv2#
看看下面的函数:
进口
功能:
8i9zcol23#
简单地说,你想把数据存储在内存中。基本的构建块是字节数组-
byte[]
。在JDK中有两个类将IO世界与字节数组连接起来-ByteArrayInputStream
和ByteArrayOutputStream
。其余的都是一样的,当处理文件。
euoag5mw4#
实施例一
例二:
参考:https://www.baeldung.com/spring-controller-return-image-file