java - 从 Spring MVC 流式传输动态文件

标签 java spring file spring-mvc streaming

我有一个 Spring Web MVC 应用程序(还有一个 BlazeDS 应用程序,虽然不那么相关),其中的文件是根据某些客户端操作动态生成的。

我只想将文件系统上的某个目录映射到 Spring MVC(或应用程序服务器)url,并让它为该目录中的文件提供服务(具有流式传输和标准的 last-modified header 支持)。理想情况下,映射目录将通过 spring 配置进行配置,因为我已经支持每台机器进行设置。

那么,我该怎么做呢?到目前为止,我能找到的最好的方法是编写一个手动读取文件并逐字节流式传输的 Controller 。然而,这似乎远不理想。 Spring MVC 或标准应用程序服务器规范中是否已经包含对此类内容的支持?

谢谢!

最佳答案

如果您的处理模型支持它,为什么不将文件系统的中间人完全排除在外,而只是在文件生成时通过响应流将其流回?查看 Spring MVC 的 AbstractExcelView 和 AbstractPDFView 类,了解如何完成此操作的一些示例。

关于java - 从 Spring MVC 流式传输动态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2353095/

相关文章:

java - 在二叉树中分布 AND over OR(合取范式)

java - 预下载所有依赖项

spring - 使用 Spring JPA/EclipseLink 的 PostgreSQL 查询的大结果

java - 从 JDBC 驱动程序访问 sqlite 数据库

java - 使 Spring Data JPA 与 DataNucleus (GAE) 配合使用 (Spring Boot)

java - 错误 java.sql.SQLException : Unable to load authentication plugin 'caching_sha2_password' during creation of spring boot application

java - AsyncTask 接口(interface)中的 NullPointerException

android - OTG在Android设备中的路径

file - SQLite3 数据库或磁盘已满/数据库磁盘镜像格式错误

C# 将文件行存储到数组中,然后保存选定的行