<forward 방식>

 

redirect 방식은 내부, 외부 모두 연결을 할 수 있었다.

하지만 forward 방식은 내부자원으로만 접근 할 수 있는 방식이다.

다른이름으로는 dispatch 방식이라고도 함, 더 많이 쓰이는 방식

 

package move;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class MoveServlet extends HttpServlet {
	@Override
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		
		RequestDispatcher rd = request.getRequestDispatcher("/han.jsp");
		rd.forward(request, response);
	}
}

 

실행하여보면...

 

사용자 삽입 이미지

 

잘보면.... 주소가... /move 임에도 불구하고

화면은 han.jsp 의 내용이 나옴을 알 수 있다.

 

사용자 삽입 이미지

 

클라이언트가 /move 라고 요청을 하면 서벼는 web.xml 을 참조하여

MoveServlet을 실행하는데 /han.jsp 로 forward 한다.

서버는 han.jsp 를 클라이언트에게 응답한다.

주소는 바뀌지 않은체로...

request, response는 한번씩만 발생한다.

 

즉, 처음 방명록을 만들었을때와는 달리 MoveServlet 이 요청을 받아 응답을 직접 하지 않고

han.jsp 로 위임하는 격이다.

 

request에 담겨있는 주소(/move) 는 그대로 유지하면서 화면은 /han.jsp 가 보여진다.

주소가 /move 이기 때문에 우리가 han.jsp 로 만든것을 뿌려주는지 사용자들은 알 수가 없다.

jsp 로 만들었지만 사용자들은 전혀 알 수 가 없다.

웹어플리케이션 안쪽을 싸그리 숨길 수 있다. --> 보안이 뛰어남

php, asp 같은 경우엔 보안적으로 취약하다. (소스를 어느정도 다 훔칠 수 있음)

 

 

앞서 만든 방명록에서는 GBListServlet 이 화면에 뿌려지는 내용까지 다 담고 있었다.

(pw.write("<div style=\"background-color: #cccccc; clear: left; padding-bottom: 5px;\">"); 이런식으로

html 을 한줄한줄 이식했었다.)

이러한 방식은 개발자와 디자이너와 협업이 불편하고, 개발자체도 귀찮으며, 가독성도 떨어지므로

페이지이동의 두가지 방식, foward, redirect 를 이용하여

보여지는 부분을 따로 분리해버리는 것이다.

forwad 시킬 주소를 /gb/list.do 로 바꾼다면....?

1. 클라이언트가 /move 라고 요청을 보낸다.

2. 서버는 web.xml 을 참조 MoveServlet 을 실행

3. MoveServlet은 /gb/list.do 로 foward 시킴

4. 서버는 web.xml 을 참조 GBListServlet을 실행

5. 서버는 해당 결과를 클라이언트에게 응답

05 3, 2009 04:37 05 3, 2009 04:37
iamback 이 작성.

Trackback URL : http://pippen80.cafe24.com/trackback/164

Trackback RSS : http://pippen80.cafe24.com/rss/trackback/164

Trackback ATOM : http://pippen80.cafe24.com/atom/trackback/164


« Prev : 1 : ... 112 : 113 : 114 : 115 : 116 : 117 : 118 : 119 : 120 : ... 251 : Next »