티스토리 뷰

JSP

JSP 다른 웹 자원(jsp) 호출

Won91 2018. 3. 26. 13:11

1. 다른 웹 자원(jsp) 호출하는 여러가지 방식과 그 차이점


- sendRedirect :response 내장 변수를 이용해 호출하는 방식

ex) response.sendRedirect("result.jsp?RESULT="+data);


- forward : RequestDispatcher 인터페이스에 속하며 request 내장 변수에 대해 getRequestDispather 메서드를 호출해 얻는다.

ex) RequestDispatcher dispatcher = request.getRequestDispatcher("Result.jsp");

dispatcher.forward(request,response);

-> request안에 데이터를 저장해 놓으면 다른 페이지에서 사용가능.


첫째, forward와 sendRedirect의 차이는 sendRedirect는 URL을 웹브라우저로 보내서 간접적으로 웹 자원을 호출하지만, forward는 웹 서버 쪽에서 직접 호출합니다.

둘째, sendRedirect는 다른 웹 서버에 있는 것도 호출할 수 있지만, forward는 같은 웹서버 같은 디렉터리 내에 있는 웹 자원만 호출 가능.

셋째, sendRedirect는 텍스트 데이터만 전송가능 forward는 객체 형태의 모든 데이터 전송가능.

넷째, sendRedirect에서 한글 데이터 전송을 위해서는 인코딩이 필요하지만 forward에서는 불필요.


- include : forward처럼 다른 jsp 페이지 호출하는 기능을 하지만, 호출된 jsp 페이지가 끝나고 나면 실행 흐름의 제어가 본래의 jsp 페이지로 돌아오는 점이 다르다.

ex) RequestDispatcher dispatcher = request.getRequestDispatcher("Result.jsp");

dispatcher.include(request,response);



'JSP' 카테고리의 다른 글

쿠키와 세션  (0) 2018.03.26
JSP 기초 문법  (0) 2018.03.26
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함