[java] 서블릿과 JSP의 연동 방법

서블릿과 JSP는 Java 웹 개발에서 가장 일반적으로 사용되는 기술들입니다. 서블릿은 웹 애플리케이션의 비즈니스 로직을 처리하고, JSP는 사용자에게 동적인 웹 페이지를 보여주는 역할을 합니다. 이 두 기술을 연동하여 사용하면 효과적인 웹 개발을 할 수 있습니다.

서블릿과 JSP 연동 방법

서블릿과 JSP를 연동하는 가장 일반적인 방법은 Front Controller 패턴을 사용하는 것입니다. Front Controller는 모든 클라이언트 요청을 단일 진입점으로 리디렉션하고, 요청에 맞는 서블릿이나 JSP를 호출하는 역할을 합니다.

다음은 서블릿과 JSP의 연동을 위한 간단한 예제 코드입니다.

@WebServlet("/main")
public class MainServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // 비즈니스 로직 처리
        
        // JSP로 데이터 전달
        request.setAttribute("message", "Hello, World!");
        request.getRequestDispatcher("main.jsp").forward(request, response);
    }
}

위의 코드는 “/main” 경로로 들어오는 GET 요청을 처리하는 MainServlet 클래스입니다. 이 서블릿은 비즈니스 로직을 처리한 뒤, JSP로 데이터를 전달하고 화면을 보여줍니다. 전달할 데이터는 request.setAttribute() 메소드를 사용하여 설정하고, request.getRequestDispatcher().forward() 메소드를 사용하여 JSP를 호출합니다.

<!DOCTYPE html>
<html>
<head>
    <title>Main Page</title>
</head>
<body>
    <h1>${message}</h1>
</body>
</html>

위의 코드는 main.jsp 파일입니다. 이 JSP 파일은 서블릿에서 전달한 데이터를 받아서 화면에 출력합니다. ${message}는 JSP에서 EL(Expression Language)을 이용하여 데이터를 출력하는 방식입니다.

참고 자료

서블릿과 JSP의 연동 방법에 대해 간단한 예제 코드를 통해 알아보았습니다. 이를 기반으로 실제 웹 프로젝트를 개발할 때에도 서블릿과 JSP를 효율적으로 활용할 수 있을 것입니다.