블로그 이미지
헤이장

Notice

Recent Post

Recent Comment

Recent Trackback

calendar

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
  • total
  • today
  • yesterday
2009. 7. 27. 13:27 Web/Jsp

<init-param> 서블릿 초기화 파라미터 

서블릿은 init(ServletConfig) 에서 부터 ServletConfig 를 가지게 된다
생성자에서는 없다

서블릿 클래스에 코딩하지 않고 DD 파일에 정의해두면 변경시 서블릿을 바꿀 필요도 다시 컴파일 할 필요도 없다

 web.xml
 <servlet>
        <servlet-name>InitParamTest</servlet-name>
        <servlet-class>InitTestClass</servlet-class>
        <init-param>
            <param-name>email</param-name>
            <param-value>remns@naver.com</param-value>
        </init-param>
        <init-param>
            <param-name>addr</param-name>
            <param-value>busan, korea</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>InitParamTest</servlet-name>
        <url-pattern>/init</url-pattern>
    </servlet-mapping>
</servlet>

 InitTestClass.java
 public class InitTestClass extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        PrintWriter out = resp.getWriter();
        out.print("email : " + getServletConfig().getInitParameter("email") + "<br/>");
        out.print("addr : " + getServletConfig().getInitParameter("addr"));
    }
}


결과
     email : remns@naver.com
     addr : busan, korea

 

<context-param> 컨텍스트 초기화 파라미터

모든 웹 애플리케이션에서 파라미터를 공유하기 위해서 사용한다

web.xml 
    <servlet>
      ...생략...
    </servlet>

    <context-param>
        <param-name>id</param-name>
        <param-value>remns</param-value>
    </context-param>


 ContextTestClass.java
 public class ContextTestClass extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        PrintWriter out = resp.getWriter();
        out.print(getServletContext().getInitParameter("id");
    }
}

posted by 헤이장