Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
355 views
in Technique[技术] by (71.8m points)

inputstream - How to handle IO streams in Spring MVC

I have a method which returns ResponseEntity(InputStreamResource). In this method, I'm getting InputStream from a file based on the filename input and then sending InputStreamResource as a response.

Code snippet

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

Here do I need to close inputStream object? If I do so, I'm getting

IllegalStateException: Closed message. Do I need to explicitly close them or container will take care.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

The underlying class where this is handled is ResourceHttpMessageConverter and it closes the underlying input stream as is evident from here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...