본문 바로가기

JSP

config와 application 내장 객체

config 내장 객체

서블릿이 초기화될 때 참조해야 하는 정보를 가지고 있다가 전달해 주는 내장 객체이다
서블릿이 최초로 메모리에 적재될 때 컨테이너는 서블릿 초기화와 관련된 정보를 읽고 javax.servlet.ServletConfig객체에 저장한다
config는 바로 ServletConfig 클래스에 대한 참조 변수로 web.xml에 설정된 초기화 파라미터를 참조하기 위한 용도로 사용할 수 있다



■ config의 메소드
  • getInitParameterNames() : 초기 매개변수 값들의 설정 이름을 열거 객체로 반환한다(모든 초기화 파라미터 이름을 리턴한다)
  • getInitParameter(name) : 이름이 name에 해당하는 초기화 파라미터의 값을 반환한다
  • getServletName() : 서블릿의 이름을 리턴한다
  • getServletContext() : 실행하는 서블릿 ServletContext 객체를 리턴한다




application

웹 애플리케이션(컨텍스트) 전체를 관리하는 객체이다
application 객체를 통해 각 서블릿이나 jsp에서 공유하려고 하는 각종 정보를 설정하고 참조할 수 있다


javax.servlet.ServletContext 인터페이스 자료 유형으로 웹 어플리케이션에서 유지 관리되는 여러 환경 정보를 관리한다
여기서 웹 어플리케이션이란 여러 개의 서블릿과 JSP로 구성되는 웹 서비스 응용 프로그램 단위로
application 내장 객체는 서블릿과 서버 간에 자료를 교환하는 여러 메소드를 제공한다


웹 어플리케이션의 설정 정보를 갖는 context와 관련이 있는 객체로, 웹 어플리케이션과 연관이 있다
application은 javax.servletContext 객체에 대한 참조 변수로써 config 객체를 통해 생성한다

  • application 내장 객체는 일반적으로 톰캣의 시작과 종료 라이프사이클을 가진다
  • 유형별로 많은 메서드를 제공하므로 주로 관리 기능의 웹 애플리케이션 개발에 유용하다



■ application의 메소드
  • getContext(path) : 문자열 path에 지정된 자원의 컨텍스트 정보를 반환한다
  • getServerInfo() : JSP 컨테이너의 이름과 버전을 반환한다
  • setAttribute(String name, Object value) : 문자열 name 이름으로 Object형 데이터를 저장한다
    Object형이므로 자바 클래스 형태로도 저장할 수 있다
  • getAttribute(String name) : 문자열 name에 해당하는 속성값이 있다면 Object 형태로 가져온다
    따라서 변환 값에 대한 적절한 형변환이 필요하다
  • getAttributeNames() : 현재 application 객체에 저장된 속성들의 이름을 열거 형태로 가져온다
  • removeAttribute(String name) : 문자열 name에 해당하는 속성을 삭제한다
  • log(String msg) : 지정한 MSG의 로그를 저장한다

실행 코드



실행 결과

새로 고침을 할 때마다 현재까지 조회수가 계속 늘어난다