웹 개발 기초/자바 웹을 다루는 기술 101

ServletContext 클래스

톰캣 컨테이너 실행 시 각 컨텍스트(웹 애플리케이션)마다 한 개의 ServletContext 객체를 생성하고, 톰캣 컨테이너가 종료하면 ServletContext 객체 역시 소멸됨. ServletContext 객체는 웹 애플리케이션이 실행되면서 애플리케이션 전체의 공통 자원이나 정보를 미리 바인딩해서 서블릿들이 공유하며 사용함. ServletContext 클래스의 특징 javax.servlet.ServletContext로 정의되어 있음 서블릿과 컨테이너 간 연동을 위해 사용 컨텍스트(웹 애플리케이션)마다 하나의 ServletContext가 생성됨 서블릿끼리 자원(데이터)을 공유하는 데 사용 컨테이너 실행 시 생성되고 컨테이너 종료 시 소멸됨 ServletContext가 제공하는 기능 서블릿에서 파일 접근..

두 서블릿 간 회원 정보 조회 바인딩 실습

// MemberDAO.java package sec04.ex03; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.PreparedStatement; import java.util.*; import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; import java.sql.Date; public class MemberDAO { /* private static final String driver = "oracle.jdbc.driver.OracleDriver"; pri..

HttpServletRequest를 이용한 dispatch 포워딩 시 바인딩

앞서 redirect 방식을 이용하여 포워딩 시 바인딩을 하게 되면 정상적으로 원하는 결과가 출력되지 않는 점이 있었다. 이를 해결하기 위해 RequestDispatcher 클래스를 이용해서 바인딩해보자. // FirstServlet.java package sec04.ex02; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.ser..

HttpServletRequest를 이용한 redirect 포워딩 시 바인딩

브라우저에서 전달받은 request를 서블릿에서 redirect 방식으로 다른 서블릿에 전달하는 경우 // FirstServlet.java package sec04.ex01; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.Ht..

바인딩

서블릿에서 다른 서블릿으로 포워딩할 때 GET 방식으로 데이터를 전달하는 방법은 데이터의 양이 적을 때 편리하다는 장점이 있음 그러나 서블릿에서 조회한 대량의 상품 정보를 JSP로 전달할 때는 GET 방식이 불편하기 때문에 바인딩 기능을 사용함 바인딩: "두 개를 하나로 묶는다" 웹 프로그램 실행 시 자원(데이터)을 서블릿 관련 객체에 저장하는 방법으로, 주로 HttpServletRequest, HttpSession, ServletContext 객체에서 사용되며 저장된 자원(데이터)은 프로그램 실행 시 서블릿이나 JSP에서 공유하여 사용함 모델2, 스트럿츠, 스프링 프레임워크로 구현하는 웹 프로그램은 바인딩 기능을 이용해서 서블릿이나 JSP 간 데이터를 전달하고 공유함 서블릿 객체에서 사용되는 바인딩 관..