Да, он закрывает его. Что касается того, следует ли его закрыть, ожидаете ли вы написать что-нибудь еще в потоке ответов? Если нет, я думаю, что это нормально закрыть. Если вы его не закрыли, вы должны, очевидно, сбросить его - но я подозреваю, что вы могли бы понять, что вы можете вычеркнуть для себя :)
Поведение на самом деле унаследовано от FilterOutputStream
. Javadocs для FilterOutputStream.close
для состояния:
близко метод FilterOutputStream
вызывает его метод промывки, а затем вызывает тесную метод его основного выходного потока.
Что касается необходимости его буферизации - я не уверен, что это четко определено. Он может быть похоронен в спецификации сервлета где-то - и он может даже быть настраиваемым (иногда вы действительно не хотите буферизации, но если вы можете буферировать весь ответ, это означает, что вы можете обслуживать более приятную страницу с ошибкой, если что-то пойдет не так, я начал писать).