如何在Spring MVC中处理IO流

n3ipq98p  于 2022-11-14  发布在  Spring
关注(0)|答案(1)|浏览(151)

我有一个返回**ResponseEntity(InputStreamResource)**的方法。在这个方法中,我根据输入的文件名从文件中获取InputStream,然后发送InputStreamResource作为响应。

程式码片段

InputStream inputStream = ...;    
ResponseEntity<InputStreamResource> response = new ResponseEntity<InputStreamResource>(new InputStreamResource(inputStream), headers, HttpStatus.OK);
return response;

在这里我需要关闭inputStream对象吗?如果这样做,我会得到
非法状态异常:已关闭消息。
我是否需要显式关闭它们或容器将采取措施。

xwbd5t1u

xwbd5t1u1#

处理此操作的底层类是ResourceHttpMessageConverter,它关闭了底层输入流,这一点从此处可以明显看出

相关问题