Sio's Programming

Servlet (ServletConfig,ServletContext,ServletContextListener) 본문

Programming/JSP

Servlet (ServletConfig,ServletContext,ServletContextListener)

SSio 2018. 5. 7. 21:22

서블릿 초기화 파라미터 : ServletConfig


특정 Servlet이 생성될 때 초기에 필요한 데이터들이 있습니다. 예를 들어 특정 경로 및 아이디 정보 등 입니다.

이러한 데이터들을 초기화 파라미터라고 하며, web.xml에 기술하고 Servlet파일에서는 SEvletConfig 클래스를 이용해서 접근(사용)합니다.

또한 초기화 파라미터를 web.xml이 아닌 Servlet파일에 직접 기술하는 방법도 살펴 봅니다.


web.xml파일에 초기화 파라미터 기술


1
2
3
4
5
6
7
8
9
10
11
12
13
  <servlet>
      <servlet-name>initParam</servlet-name>
      <servlet-class>com.javalec.ex.initParam</servlet-class>
  
  <init-param>
      <param-name>id</param-name>
      <param-value>abcd</param-value>
  </init-param>
  <init-param>
      <param-name>pw</param-name>
      <param-value>123456</param-value>
  </init-param>
  </servlet>
cs



Servlet 파일에 초기화 방법


@WebServlet(urlPatterns= {"/initP"},initParams={@WebInitParam(name="id",value="aaaa"),@WebInitParam(name="pw",value="12345")})




데이터 공유 : servletContext


여러 Servlet에서 특정 데이터를 공유해야 할 경우 context parameter를 이용해서 web.xml에 데이터를 기술하고 servlet에서 공유하면서 사용 할 수 있습니다.



웹어플리케이션 감시:servletContextListener


웹어플리케이션 생명주기를 감시하는 리스너가 있습니다. 바로 ServletContextListener 입니다.

리스너의 해당 메소드가 웹 어플리케이션의 시작과 종료 시 호출 됩니다.(contextInitialized(), contextDestroyed())