java - Tomcat:WebService 响应作为 zip 存档而不是文件

标签 java tomcat zip

我希望网络服务以 zip 文件的形式做出响应。

通常没有什么难做的。但是有一件事我想知道: 我可以在不将文件保存到硬盘的情况下压缩文件吗,即使它非常大 (100Mb - 500Mb)?

现在我正在使用这个不错的 hack。我想用压缩功能扩展它而不在文件系统上创建新文件。

public class TempFileInputStream extends FileInputStream {

    private File file;

    public TempFileInputStream(File file) throws FileNotFoundException {
        super(file); // TO WANT: to pass here already zipped stream
        this.file = file;
    }

    @Override
    public void close() throws IOException {
        super.close();
        if (!file.delete()) {
            // baad
        } else {
            // good 
        }
    }
}

如果可以,那么更好/最佳的方法是什么?

感谢您的帮助!

最佳答案

关于java - Tomcat:WebService 响应作为 zip 存档而不是文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4782806/

相关文章:

java - .class 编译时调用错误

java - 为什么我的下载进度条会多次触发同一个事件?

java - 从 Java 程序内部执行 jar 文件

zip - libArchive 修改 .zip 文件中的数据

c# - 将大文件添加到 IO.Compression.ZipArchiveEntry 会引发 OutOfMemoryException 异常

java - 如何在selenium中找到特定Web元素中的直接Web元素?

Java exec 在 64 位 Windows 中不起作用

spring - 具有多个域的 Web 应用程序指向父域的子文件夹

java - Spring Boot 的 application.properties 的 Autowiring 在 Tomcat 中部署时抛出 NPE

c# - ZipFile.ExtractToDirectory 抛出长文件名