JSP(JavaServer Page)

JSP(JavaServer Page) - 8 : response 객체, sendRedirect() 메서드와 forward action의 차이

n.han 2016. 7. 27. 00:39

- response 객체


response는 request와 반대되는 개념으로, 사용자 응답과 관련된 기능을 제공하는 내장 객체이다.


response는 response에 비해 많이 사용되는 메서드는 적은 편이지만, sendRedirect() 메서드는 


잘 알아두어야 한다.


1. sendRedirect()


sendRedirect()는 사용자 요청을 다른 페이지로 보내는 것으로,


새로운 페이지를 위한 request, response 객체가 생성된다.







2. sendRedirect()와 forward 액션의 차이


1) sendRedirect() 메서드는 새로운 페이지를 위한 request, response 객체를 생성하지만,


forward 액션은 원래 요청에 포함된 request와 response 객체가 그대로 전달된다.


따라서 forward 액션은 먼저 요청한 파라미터 정보를 가지고 있지만,


sendRedirect()는 그렇지 않다. 이는 GET 방식으로 파라미터 값을 수동으로 넘김으로써 해결할 수 있다.


2) sendRedirect()는 새로운 페이지를 요청하는 것이므로, URL이 변경되어진다.


하지만 forward 액션은 내부적으로 요청을 전달하는 것이므로, URL이 변경되어지지 않는다.