웹 서버의 애플리케이션 처리와 관련된 정보를 참조하기 위해 사용
서버 관련 정보 (개발자를 위한)
getServerInfo()
JSP/서블릿 컨테이너 이름과 버전 반환getMajorVersion()
컨테이너가 지원하는 서블릿 API의 Major 버전 정보 반환getMinorVersion( )
컨테이너가 지원하는 서블릿 API의 Minor 버전 정보 반환서버 자원 정보
getMimeType(filename)
문자열 filename에 지정된 파일에 대한 MIME type을 반환getResource(path)
문자열 path에 지정된 자원을 URL 객체로 반환getResourceAsStream(path)
문자열 path에 지정된 자원을 InputStream 객체로 반환getRealPath(path)
문자열 path에 지정된 자원을 파일 시스템의 실제 경로로 반환getContext(path)
문자열 path에 지정된 자원의 컨텍스트 정보를 반환getResourceDispatcher(path)
문자열 path에 지정된 자원을 위한 request dispatcher를 생성로그
log(message)
문자열 message 내용을 로그 파일에 기록log(message,exception)
예외 상황과 관련한 정보를 포함하여 로그 파일에 기록속성
getAttribute(String name)
문자열 name에 해당하는 속성값이 있다면 Object 형태로 가져옴.getAttributeNames( )
현재 application 객체에 저장된 속성 이름을 Enumeration 형태로 가져옴.setAttribyte (String name, Object value)
문자열 name 이름으로 Object 형 데이터를 저장removeAttribute(String name)
문자열 name에 해당하는 속성을 삭제<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>application 내장 객체 메서드 테스트</title>
</head>
<body>
Server 정보 : <%= application.getServerInfo() %>
<br>
<br>
Servlet API Version 정보 : <%= application.getMajorVersion() %>.<%= application.getMinorVersion() %>
<br>
<br>
파일의 실제 경로 : <%= application.getRealPath("/") %>
<br>
<br>
<hr>
<%
// username, count 변수 설정(set)
application.setAttribute("username", "사용자1"); // username 변수 값을 "사용자1"로 지정
application.setAttribute("count", 1); // count 는 1부터 시작됨
%>
<a href="applicationCheck.jsp">확인하기</a>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>application 내장 객체 메서드 확인 테스트</title>
</head>
<body>
// username 변수 조회(get)
username 설정 값 : <%= application.getAttribute("username") %>
<br>
<br>
<%
// count 변수 조회(get)
Integer count = (Integer) application.getAttribute("count");
// 조회해온 변수의 값에 +1
count++;
// counting 후, 늘어난 값으로 재설정(set)
application.setAttribute("count", count);
%>
count : <%= count %>
</body>
</html>
getRealPath(path) 사용 권장!
프로젝트 파일의 경로와 Tomcat 경로가 다른 경우가 많아서 경로 에러가 발생하는 경우 多
--> 따라서, 해당 메서드를 통해 실제 경로를 확인하고 코드를 작성하길 바란다.