본문 바로가기

Server Development/Serlvet

Servlet - Forwarding

Forwarding이란 한 서블릿에서 다른 서블릿으로 정보를 전달하는 방식이다.

종류

- Redirect

- Refresh

- Location

- Dispatch

 

여기서 Dispatch만 알아보려고 한다.

이유는 나머지 방식은 다른 서블릿에 전달하기 위해 client를 거쳐 다음 서블릿으로 전달된다.

(Client 요청 -> Servlet1 -> Clint -> Servlet2)

 

Dispatch

- Client를 거치지 않고 원하는 데이터를 다른 서블릿으로 전달하는 방식

- 본질적으로는 get 방식으로 전달, 따라서 다음 서블릿에서는 doGet 메서드를 이용해 정보를 전달받는다.

 

간단하게 처음에 first servlet으로 전달받은 request, response를 그대로 second servlet으로 전달하는 방식이다.

다음과 같이 다음으로 이동할 서블릿 지정 후 forwarding 해준다.

@WebServlet("/first")
public class FirstServlet extends HttpServlet {

	public void init(ServletConfig config) throws ServletException {

	}
	public void destroy() {

	}
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		RequestDispatcher dispatch = request.getRequestDispatcher("second");
		dispatch.forward(request, response);
        
	}

}

'Server Development > Serlvet' 카테고리의 다른 글

Servlet - ServletContext  (0) 2023.03.21
Servlet - Binding  (0) 2023.03.21
Servlet - Get, Post  (0) 2023.03.21
Servlet - API  (0) 2023.03.20
Servlet - Mapping  (0) 2023.03.20