앎/web

[Servlet] 초기화 매개변수

후니아부지 2014. 3. 6. 17:55

web.xml 에 서블릿 등록시 <init-param> 태그를 사용해 초기화 매개변수를 등록할 수 있다.

....

    서블릿 이름
    서블릿 클래스
    
        초기화 매개변수 명
        초기화 매개변수 값
    

....

서블릿 클래스(GenericServelt or HttpServlet)의 getInitParameter("매개변수명") 을 통해 값을 가져올 수 있다.

또는 ServletConfig를 상속 받은 다른 클래스나 ServletConfig 객체 생성 후 매개변수를 가져올 수 도 있다.


예제)

web.xml

....
  <servlet>
  	<servlet-name>InitParam</servlet-name>
  	<servlet-class>com.study.InitParamTest</servlet-class>

  	<init-param>
  		<param-name>nick</param-name>
  		<param-value>hoya</param-value>
  	</init-param>

  	<init-param>
  		<param-name>age</param-name>
  		<param-value>18</param-value>
  	</init-param>
  </servlet>
  
  <servlet-mapping>
  	<servlet-name>InitParam</servlet-name>
  	<url-pattern>/InitParam.do</url-pattern>
  </servlet-mapping>
....


InitParamTest.java

package com.study;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class InitParamTest extends HttpServlet {
	public void service(HttpServletRequest _request, HttpServletResponse _response) {
		System.out.println("nick: " + this.getInitParameter("nick"));				
		System.out.println("age: " + this.getInitParameter("age"));				
	}
}