[JSP] flush 속성

<jsp:include page="/header/header.jsp" flush="false"/>

- jsp 액션태그(예 <jsp:include>) 속성 중 flush라는 속성이 있다. 이는 true, false 를 값으로 가지는 boolean 속성이다.

- 이는 jsp:include 액션태그가 실행될 때 출력버퍼에 저장된 기존 코드들을 플러시하고 서브 페이지로 실행흐름이 이동한다는 말이다. 동시에 응답상태코드와 HTTP응답 헤더가 웹브라우저에 함께 전송된다. 

- 응답상태코드와 HTTP 응답헤더가 웹브라우저에 전송된다면 새로 헤더정보를 추가하더라도 웹 브라우저는 받을 수 없게 된다.

- 따라서 일반적으로 flush 속성을 false 로 지정하는 것이 좋다. 왜냐하면 하나의 jsp:include 액션태그의 flush 속성이 true로 설정되어 있다면 출력버퍼는 비워지고 모든 헤더정보를 웹브라우저에 전송하게 되는데 나중에 헤더정보를 추가하게 되면 반영될 수가 없다. 따라서 조각페이지로 사용되는 jsp:include 태그의 flush 속성을 false로 꺽어두고 진행하는 것이 좋을 것 같다.

댓글

Designed by JB FACTORY