Forward와 Redirect 차이
Forward 방식
- Forward는 Web Container 차원에서 페이지의 이동만 존재한다. 실제로 웹 브라우저는 다른 페이지로 이동했음을 알 수 없다. 그렇기 때문에 웹 브라우저에는 최초에 호출한 URL이 표시되고, 이동한 페이지의 URL 정보는 확인할 수 없다.
- 현재 실행중인 페이지와 forward에 의해 호출될 페이지는 Request 객체와 Response 객체를 공유한다. ㅇㅇㅇㅇ
Servlet에서 JSP로 페이지 이동할 때 사용되는 명령문
RequestDispatcher rd = request.getRequestDispatcher("test01.jsp");
rd.forward(request, response);
Redirect 방식
- Redirect는 Web Container로 명령이 들어오면, 웹 브라우저에게 다른 페이지로 이동하라고 명령을 내린다. 그러면 웹 브라우저는 URL을 지시된 주소로 바꾸고 해당 주소로 이동한다. 다른 웹 컨테이너에 있는 주소로 이동한다.
- 새로운 페이지에서는 Request와 Response 객체가 새롭게 생성된다.
Servlet에서 JSP로 페이지 이동할 때 사용되는 명령문
response.sendRedirect("test02.jsp");
출처
최종 수정 : 2024-01-18