리다이렉트 / 포워드
redirect : 사용자가 주소를 전달받아 서버에 다시 요청한다 ( 즉, get 방식으로 요청된다, 파라미터 값이 전달되지 않음 )
forward : 사용자가 요청하는 것이 아니라 서버에서 돌려주는 것이라 요청방식이 유지되며 파라미터 값, Attribute 값이 그대로 전달된다 >> forward 를 사용하는 경우 웹 출력 화면이 변해도 ( 실제 출력되는 jsp 파일이 변해도 ) url 은 첫 요청 페이지에서 변하지 않는다.
- 차이점 리뷰 -
로그인 성공 시 forward 로 success.jsp 로 넘기며( 서버에서 처리 ), 로그인 실패 시 redirect 로 다시 login 페이지로 이동 >>
1. 콘솔창에 뜨는 method 와 파라미터, Attribute 값이 redirect 에서는 소멸, forward 에서는 그대로 남아 이동되는 것 확인
2. forward 로 이동 시 url 이 처음 접근한 url 이고 ( 서버에서만 처리하여 보여주는 것이기 때문 > 그렇다고 서버에서 Controller 를 거쳐 출력되는 것이 아니라 그냥 jsp 파일만 출력할 뿐 > 고로, 연산은 따로 진행되지 않음 ) redirect 로 이동 시 url 이 처음 접근한 url 이 아니라 변경 요청된 url 임을 확인 ( 서버가 주소를 클라이언트에게 전달하여 클라이언트가 다시 서버로 요청 )
'BE > Spring' 카테고리의 다른 글
[Spring] Test ( JUnit ), DB 연동 ( MyBatis 세팅, HikariCP 세팅 ) (0) | 2024.05.09 |
---|---|
[Spring] 정적 파일 관리 및 적용 ( css, javascript, image ) (0) | 2024.05.09 |
[Spring] 어노테이션 종류, @Autowired, @qualifier, GET / POST 방식 처리 (0) | 2024.05.08 |
[Spring] MVC2 모델 (1) | 2024.05.07 |
[Spring] 인코딩 설정, 포트 에러, Context 에러(경로 충돌 에러), 경로 설정, Controller (0) | 2024.05.07 |