티스토리 뷰
사용용도 : 웹 어플리케이션의 최초 시작시 초기화 작업이나 종료 작업에 쓰임(DB의 커넥션 객체를 가져온다거나 등의..)
관련 인터페이스 : ServletContextListener
관련 클래스 : -
사용법 :
1. ServletContextListener인터페이스를 구현하는 클래스를 작성한뒤
초기화작업 메서드 contextInitialized(ServletContextEvent sce)
종료작업 메서드 contextDestroyed(ServletContextEvent sce)
를 오버라이딩해준다.
(사용해보니 톰캣을 시작 할때 최초 1번 contextInitialized를 수행했고, 톰캣을 재시작 했을 때 1번
contextDestroyed가 수행됐다. 톰캣을 종료할 때는 수행 되지않았다.)
2. 오버라이딩한 메서드에 수행할 작업을 코딩한 후 web.xml에 리스너로 등록한다.
ServletContextListener를 구현받아 작성한 클래스(실제 리스너에 적용할 클래스)
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 |
package com.choon.servlet;
import java.util.Enumeration;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class ServletContextTest implements ServletContextListener{
@Override
public void contextInitialized(ServletContextEvent sce) {
ServletContext sc = sce.getServletContext();
Enumeration e = sc.getInitParameterNames();
String test = (String)sc.getInitParameter("contextTest");
System.out.println(test);
System.out.println(test);
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("디스트로이메서드");
System.out.println("디스트로이메서드");
System.out.println("디스트로이메서드");
System.out.println("디스트로이메서드");
System.out.println("디스트로이메서드");
}
}
|
web.xml등록
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 |
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<listener>
<listener-class>com.choon.servlet.ServletContextTest</listener-class>
</listener>
<!-- 실제 수행 할 리스너이벤트-->
<context-param>
<param-name>contextTest</param-name>
<param-value>테스트값입니다</param-value>
</context-param>
<!-- 초기화 파라미터로써 ServletContext에 파라미터를 보낸다 --> |
'JSP' 카테고리의 다른 글
커스텀태그 작성 (0) | 2016.06.20 |
---|---|
서버단에서 한글 파라미터가 깨질 때 (0) | 2014.04.16 |
글쓰기 form 네이버 오픈소스 스마트 에디터 적용 (0) | 2013.12.14 |
EUC-KR캐릭터 형식을 사용하였을 때 response객체로 리다이렉트시 한글 경고창 물음표뜨는 문제 해결방법 (0) | 2013.12.06 |
웹서버? 웹어플리케이션서버? 웹컨테이너? (0) | 2013.11.03 |
Comments