리다이렉트(Redirect)

리다이렉트는 서버가 클라이언트에게 다른 페이지로 이동하라고 요청하는 방법입니다

리타이렉트는 두 단계로 이루어집니다

 

  1. 클라이언트에게 다른 URL로 이동하라는 응답을 보냅니다
  2. 클라이언트는 새로운 URL로 재요청을 보냅니다

 

리다이렉트는 브라우저에게 새로운 URL로 이동하라는 명령을 주기 때문에, 클라이언트는 서버에게 두 번의 요청을 보냅니다

이로 인해 브라우저의 주소 표시줄이 변경되고, 새로운 페이지로 이동하는 효과를 가집니다

주로 외부 URL로 이동하거나, 현재 요청과 관련 없는 새로운 요청을 처리할 때 사용됩니다

 

<%
	response.sendRedirect("newPage.jsp");
%>

 

포워드(Forward)

포워드는 서버 내에서 페이지 간에 정보를 전달하면서 이동하는 방법입니다

포워드는 단일 요청에 대한 단일 응답을 유지하며, 클라이언트는 이동한 사실을 알 수 없습니다

주로 동일한 웹 어플리케이션 내에서 다른 JSP나 서블릿으로 제어를 이전할 때 사용됩니다

 

<%
	pageContxt.forward("newPage.jsp");
%>

 

리다이렉트(Redirect)와 포워드(Forward)의 차이점

  리다이렉트 포워드
주소 표시줄 변화 주소가 변경됨 주소가 변경되지 않음
클라이언트와 서버 간 통신 두 번의 요청이 발생함 단일 요청과 응답
데이터 공유 쿠키나 세션을 통해 데이터를 공유할 수 있음 요청과 응답 객체를 통해 데이터를 공유함
적합한 사용 시나리오 외부 URL로 이동이나 현재 요청과 무관한 새로운 요청일 때 사용 동일한 애플리케이션 내에서 제어를 이전하거나 데이터를 공유해야 할 때 사용

 

리다이렉트와 포워드는 각각의 특성에 따라 다른 사용 시나리오에 적합하므로, 상황에 따라 적절한 방법을 선택하는 것이 중요합니다

+ Recent posts