본문 바로가기
Spring

[jsp][servlet] Forward VS Redirect(차이점)

by codeok 2020. 9. 3.
반응형

현재 학습 기록용으로 블로그를 작성하고 있습니다.

맞지 않은 내용이 있거나 부족한 내용이 있으면 댓글로 달아 주시면 감사하겠습니다.

TODO

  1. Redirect란?
  2. Forward란?
  3. Redirect와 Forward의 큰 차이점 두 가지
  4. 사용 예시

 

Spring으로 Controller에서 forward, redirect를 적절하게 선택을 하기 위해서 이번 포스팅을 작성을 하게 되었습니다.

 

1. Redirect란?

최초 요청을 받은 URL1에서 클라이언트에 redirect 할 URL2로 리턴을 하고, 클라이언트에게 전혀 새로운 요청을 생성하여 URL2에 다시 요청을 보낸다. 따라서 처음 보냈던 최초의 요청 정보가 유효하지 않는 것이 Redirect 방식입니다.

 

2. Forward란?

다시 이동한 URL로 요청정보를 그대로 전달한다. 말 그대로 forward(건네주기)하는 것이다.

사용자가 최초로 요청한 정보는 다음 URL에서도 유효하다.

 

3. Redirect 와 Forward의 큰 차이점 두 가지

  • URL의 변화여부(redirect는 변화 O, forward는 변화 X)
  • 객체의 재사용의여부( redirect는 재사용 X, forward는 재사용 O)

4. 사용 예시

시스템(session, DB)에 변화가 생기는 요청(로그인, 회원가입, 글쓰기)의 경우 redirect 방식으로 응답하는 것이 바람직하며, 시스템에 변화가 생기지 않는 단순 조회(리스트 보기, 검색)의 경우 forward 방식으로 응답하는 것이 좋습니다.

반응형