web

초기화 매개변수

Clearing 2022. 8. 18. 23:21
728x90

초기화 매개변수는 웹 페이지가 실행될 때 필요한 정보를 전달해주며 서블릿 프로그램이 처음 실행될 때 클라이언트가

아닌 서버로부터 넘겨받는 값이다. 웹 프로그램은 모든 실행 시작점이 웹 서버의 구동이며, 이때 web.xml 파일이

자동으로 로드되기 때문에 해당 파일에 초기화 매개변수를 등록해서 웹 페이지 구동 시 매개변수 값을 읽어 들인다.

web.xml은 WEB-INF폴더 하위에 존재하며 웹서버가 시작될 때 참조하는 환경설정 파일이다.

프로그램을 동작시킬 때 필요한 정보(ex. url, id, pw... 등)를 소스코드에 하드코딩 해왔었지만 이러한 정보들은

프로젝트 중간에 쉽게 변경될 수 있기 때문에 위와 같이 별도의 환경설정 파일인 .xml 파일에 보관한다.

 

.xml 파일의 <web-app></web-app> 내부에 작성되는 <init-param></init-param>은 ServeltConfig로

해당 서블릿에서 사용 가능하며, <context-param></context-param>은 ServeltContext로 동일한 웹 어플리케이션

내에서의 모든 서블릿 내에서 사용 가능하다. 또한 <error-page></error-page>를 사용하여 에러 발생 시

에러 페이지로의 이동도 가능하다.

 

예시를 위해 작성된 .xml 파일

<?xml version="1.0" encoding="UTF-8"?>
<web-app>
	<context-param>
		<param-name>name</param-name>
		<param-value>timo</param-value>
	</context-param>
	
	<context-param>
		<param-name>encoding</param-name>
		<param-value>UTF-8</param-value>
	</context-param>
</web-app>

 

실행을 위한 .jsp 파일

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

name: <%=getServletContext().getInitParameter("name") %><br>
encoding: <%=application.getInitParameter("encoding")%> 

</body>
</html>

 

실행결과

728x90

'web' 카테고리의 다른 글

필터(Filter)  (0) 2022.08.21
리스너 클래스(2)  (0) 2022.08.20
리스너 클래스  (0) 2022.08.16
JSP - JSTL  (0) 2022.08.16
태그핸들러클래스 기반의 커스텀태그  (0) 2022.08.14