자바(Java)/JAVA 2EE

서블시의 ServletContext 객체와 같은 JSP의 application 객체

본클라쓰 2009. 8. 26. 15:59

 

서블릿 또는 웹 컨테이너의 환경 정보(Context)를 나타내는 객체가 application 객체이다. application객체를 통해 웹 컨테이너에서 실행되는 서버의 설정정보와 자원에 대한 정보를 얻거나, 실행되고 있는 동안 발생할 수 있는 이벤트 로그를 기록할 수 있는 기능을 제공한다.

 

 

 

 

■ application객체 메소드

  • String getServerInfo() : 웹 컨테이너의 이름과 버전을 반환
  • String getMimeType(finename) : 지정한 파일의 MIME 타입을 반환
  • String RealPath(path) : 지정한 경로의 웹 컨테이너상의 시스템 경로로 변경하여 반환한다.
  • URL getResource(path) : 지정한 경로에 해당하는 자원에 접근할 수 있는 URL 객체를 반환한다.
  • InputStream getResourceAsStream(path) : 지정한 경로에 해당하는 자원으로부터 데이터를 읽어 올 수 있는 IputStream을 반환
  • void log(message) : 로그 파일에 message를 기록한다.

 

 

 

■ application 객체 사용 예제

<%@ page contentType="text/html; charset=EUC-KR"   pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<body>


 

Context Path (콘텐츠 경로) : <%=application.getContextPath() %><br/>
MimeType (해당 문서의 MIME 타입): <%=application.getMimeType("test.html") %><br/>
Real Path (실제 경로): <%=application.getRealPath("/") %><br/>
Server Info (웹 컨테이너 정보) : <%=application.getServerInfo() %><br/>
Servlet Context Name : <%=application.getServletContextName() %><br/>
Major Version : <%=application.getMajorVersion()%><br/>
Resource : <%=application.getResource("/test.html") %>

 

</body>
</html>

 

■ 위 코드의 결과

 

 

 

 

■ 웹 어플리케이션 초기화 파라미터 읽기

 

WEB-INF/web.xml 파일에서 <context-param> 태그를 사용하여 어플리케이션의 초기 파라미터를 지정할 수 있습니다.

<context-param>

    <description>필수 사항은 아님(파라미터 설명)</desctiption>

    <param-name>파라미터 이름</param-name>

    <param-value>파라미터 값</param-value>

</context-param>

 

위와 같이 초기 설정을 web.xml 파일에 작성한 후 읽는 방법은 application 객체의 아래 두 개의 메소드를 통해 읽습니다.  

String getInitParameter ( String name )

이름이 name 인 초기화 파라미터의 값을 반환합니다. 

 

Enumeration getInitParameterNames()

웹 어플리케이션 초기화 파라미터의 이름 목록을 반환합니다.  

 

 

 

 

 

■ 로그 파일에 로그 기록 하기 

application.log("로그 메세지 기록");

application.log("로그 메세지", Throwable throwable)