✍️관련 강의. Web(Back)_서블릿/Jsp _JSP페이지이동1
JSP에서 페이지간 이동은 포워드와 리다이렉트 두 가지 방법으로 가능하다. 이 두 가지 방법으로 요청(request)을 받아서 화면을 변경을 한다.
포워드 방식 | 리다이렉트 방식 | |
---|---|---|
개념 | 요청이 들어오면 요청을 받은 JSP 또는 Servlet이 직접 응답을 작성하지 않고, 요청을 서버 내부에서 전달하여 해당 요청을 처리하게 하는 방식 | 요청이 들어오면 내부 로직 실행 후, 브라우저의 URL을 변경하도록 하여 새로운 요청을 생성함으로서 페이지를 이동한다. |
특징 | - URL이 변경되지 않는다. - request, reponse 객체가 그대로 전달되어 사용되기 때문에 객체가 사라지지 않는다. - 즉, 요청을 받아서 그 요청을 그대로 던진다. - 자기 서버(자바 프로젝트) 안에서만 왔다갔다하는 형태이다. | - URL이 변경된다. - request와 reponse가 초기화된다. - 브라우저가 새로운 요청을 만들어 내기 때문에 최초 요청 주소와 다른 요청주소가 화면에 보여진다. - 즉, 응답으로 새로운 요청을 전달하기 때문에 기존의 요청은 없어진다. - '다시 이 URL로 들어와라'라는 새로운 요청을 유도하는 형태이다. [브라우저에게 재요청 유도] - 따라서 다른 서버의 개입이 가능하다. |
request.setParameter() 와 request.getParameter()를 이용하면 String의 값 밖에는 주고 받을 수 없다. 따라서 Action으로 넘어온 값을 변경시킨후 JSP 페이지로 넘겨주기 위해서는 request.setAttribute() 를 써서 넘겨주고 JSP 페이지에서는 request.getAttribute()를 써서 받아야한다.