JSP/JSP: 정리
[JSP] forward 액션 태그 정리
데브마우스
2023. 12. 14. 23:37
forward 액션 태그는 무엇인가요?
forward 액션 태그는 액션 태그 중 하나로써 현재 JSP 페이지에서 다른 페이지로 이동하는 흐름을 제어합니다.
특징으로는 forward 액션 태그를 만나게 되면 그 전까지 출력 버퍼에 저장되어 있던 내용을 모두 삭제하고 forward 액션 태그에 설정된 페이지로 이동하게 됩니다.
forward 액션 태그 | 설명 | |
예제 코드 1 | <jsp:forward page="파일명" /> | 싱글 태그로 작성한 forward 액션 태그 입니다. 예전에는 싱글 태그로 작성할 수 없었습니다. |
예제 코드 2 | <jsp:forward page="파일명" > </jsp:forward> | 페어 태그(Pair taag)로 작성된 forward 액션 태그입니다. |
forward 액션 태그의 처리 흐름 과정
- 웹 브라우저에서 one.jsp 파일을 요청합니다.
- JSP 컨테이너는 요청된 one.jsp 파일을 실행합니다.
- one.jsp 실행 중 forward 액션 태그를 만날 경우, 이때까지 저장된 출력 버퍼의 내용을 삭제 후 프로그램 제어를 page 속성에서 설정한 two.jsp로 포워딩하여 이동합니다.
- two.jsp를 실행합니다.
- JSP 컨테이너는 second.jsp를 실행한 결과를, 1번의 one.jsp를 실행한 웹 브라우저에 응답으로 보냅니다.
위 처리 흐름 과정의 3번에서 출력 버퍼를 지우므로 forwar 액션 태그가 실행되기 이전까지의 one.jsp의 HTML 코드를 잃게 됩니다. 하지만 현재 페이지가 이미 전달 버퍼로 채워졌다면 전달이 중단될 때까지 해당 내용을 웹 서버에서 응답으로 보내게됩니다. 출력이 큰 페이지를 생성할 때는 forward 액션 태그를 신중하게 사용하셔야 합니다.