Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP에서 버퍼(buffer) 속성을 'none'으로 설정하면 어떻게 될까?

JSP page 디렉티브의 buffer 속성이란?

JSP의 buffer 속성은 서버 출력 응답(response) 객체의 버퍼링 동작 방식을 지정하는 옵션입니다. 이 속성을 통해 서블릿이 생성한 출력 결과를 즉시 클라이언트로 보낼지, 아니면 일정 크기의 버퍼에 임시 저장한 후 전송할지를 결정할 수 있습니다.

buffer="none" 설정 시 동작

버퍼 속성의 값을 none으로 지정하면 버퍼링이 비활성화됩니다. 이 경우 서블릿의 출력 결과가 버퍼에 저장되지 않고 응답 객체(response object)로 즉시 직접 전달됩니다.

반대로 킬로바이트(KB) 단위의 최대 버퍼 크기를 지정하면, 서블릿은 응답 객체에 바로 쓰지 않고 먼저 해당 버퍼에 출력 내용을 기록한 뒤 전송하게 됩니다.

사용 예제

서블릿이 출력을 버퍼 없이 응답 출력 객체에 바로 작성하도록 하려면 다음과 같이 page 디렉티브를 작성합니다.

<%@ page buffer = "none" %>

참고 사항

버퍼 크기를 지정하는 경우에는 buffer="16kb"처럼 값 뒤에 단위를 붙여 표현합니다. 또한 버퍼를 사용하면 응답이 확정되기 전까지 헤더 수정이나 에러 페이지 처리 등이 유연해지는 장점이 있지만, none으로 설정하면 출력 즉시 전송되므로 실시간 스트리밍처럼 즉각적인 응답이 필요한 경우에 적합합니다.