티스토리 뷰

forward 액션태그와 response.sendRedirect은 둘다 서블릿에서 페이지 전환을 위해서 사용을 하는 메서드입니다. 하지만 두가지 이동 방식에 대해서 차이가 존재해서 정리를 해보려합니다.

forward 액션 태그

forward 액션 태그는 현재 페이지에서 다른 페이지로의 이동을 할 수 있는 태그를 의미합니다. 현재 Client에서 URL을 요청해서 JSP 페이지를 보여줄 때 forward 액션 태그를 만나면 요청 URL은 유지가 되는 반면에 기존 페이지에 존재하는, 즉 forward 액션 태그의 이전 코드는 버퍼 공간에서 모두 실행이 된 후에 지워지고, 지정된 페이지로 이동하여 코드를 실행하여 보여줍니다. 사용자 입장에서는 URL이 그대로이고, 실제로는 두 페이지를 모두 실행했지만 forward에 작성된 코드만을 볼 수 있기 때문에 알 수가 없습니다.

<jsp:forward page="지정된 경로.jsp" />

//page는 같은 디렉토리에 있다면 그냥 파일명만 써도 되지만,
//그렇지 않다면 전체 URL 또는 상대경로를 작성해주어야 합니다.
response 내장 객체의 sendRedirect 

response 내장객체의 페이지 이동관련 메서드인 sendRedirect의 이동 방식은 위의 forward 액션 태그와 유사하지만 다른 점으로는 웹 브라우저에서 처음 요청을 한 페이지에서 sendRedirect를 통해 페이지를 반환하게 되고, 그것을 웹 브라우저가 다시 받아서 해당 페이지를 다시 요청을 하고, 이동을 하는 방식입니다. 즉, 처음 요청을 해서 URL이 유지가 되는 forward 액션 태그의 방식과는 다르게 기존 페이지를 반환받고 Redirect에 작성된 새로운 URL을 요청을 다시 하는 방식의 차이를 나타냅니다. 사용을 하면 Client와 Server간의 통신이 끝나는 sendRedirect와는 달리 응답을 바로 하지 않고 다른 리소스로 전달을 하는 forward 액션 태그와는 차이를 보입니다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함