[펌글] ServletConfig 이용하기

By | 8월 3, 2009

- 출처 : http://www.4te.co.kr/540 -

web.xml에 config 정보를 정의하고 해당 내용을 servlet에서 불러와 사용할 수 있다.
사용 방법은 다음과 같다.

1. web.xml 작성

  <!-- ServletConfig Test Start... -->
  <servlet>
      <servlet-name>BeerParamTests</servlet-name>
      <servlet-class>com.example.TestInitParams</servlet-class>
      <init-param>
          <param-name>adminEmail</param-name>
          <param-value>likewecare@wickedlysmart.com</param-value>
      </init-param>
      <init-param>
          <param-name>mainEmail</param-name>
          <param-value>blooper@wickedlysmart.com</param-value>
      </init-param>
  </servlet>
  <servlet-mapping>
      <servlet-name>BeerParamTests</servlet-name>
      <url-pattern>/Tester.do</url-pattern>
  </servlet-mapping>
  <!-- ServletConfig Test End... //-->

init-param을 통해서 param-name(변수명)을 정하고 param-value에 값을 넣은 후 사용할 수 있다.

2. com.example.TestInitParams.java 작성

package com.example;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;

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

public class TestInitParams extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
                    throws IOException, ServletException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("test init parameters<br>");
       
        Enumeration e = getServletConfig().getInitParameterNames();
        while(e.hasMoreElements()) {
            out.println("<br>param name = " + e.nextElement() + "<br>");
        }
        out.println("main email is " + getServletConfig().getInitParameter("mainEmail"));
        out.println("<br>");
        out.println("admin email is " + getServletConfig().getInitParameter("adminEmail"));
    }
}

getServletConfig()를 사용하여서 web.xml 파일에서 정의한 mainEmail, adminEmail 변수를 가져와 사용할 수 있다.

3. 결과물

브라우져에서 호출하면 아래와 같은 결과물을 볼 수 있다.

test init parameters

param name = mainEmail

param name = adminEmail
main email is blooper@wickedlysmart.com
admin email is likewecare@wickedlysmart.com

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments