본문 바로가기

교육/Servlet&JSP

[Servlet] 필터,리스너, 에러처리

1. 필터

    • 서블릿이 수행되기 전이나 후에 추가기능을 수행할 수 있음
    • 대표적으로 로그기록, 한글처리등에 사용
    • 구현
      • init()
        • 필터 객체가 생성될 때 호출
        • FilterConfig 값을 받아올 수 있음
          • web.xml
            • <filter>
              • <filter-name>필터이름</filter-name>
              • <filter-class>풀패키지.class명</filter-class>
              • <init-param>
                • <param-name>값이름</param-name>
                • <param-value>값</param-value>
              • </init-param>
            • </filter>
          • 위와 같이 설정 후 config.getInitParameter("값이름"); 으로 받아올 수 있음
      • destroy()
        • 필터 객체가 삭제될 때 호출
      • doFilter(res,req)
        • 필터링 설정한 서블릿을 호출할 때마다 호출
        • chain.doFilter(res,req);꼭 써줘야 함
    • 등록
      • web.xml
        • <filter>
          • <filter-name>필터이름</filter-name>
          • <filter-class>풀패키지.class명</filter-class>
        • </filter>
    • mapping
        • web.xml
          • <filter-mapping>
            • <filter-name>필터이름</filter-name>
            • <url-pattern>/*</url-pattern>
        • </filter-mapping>
        • 위와 같이 하면 전체 *대신에 URI값을 주면 해당 서블릿만 실행
        • filter-mapping순서대로 필터 실행함

2. 리스너

    • 이벤트가 발생하기 기다렸다 발생되었을 때 호출되는 메소드
    • 이런 객체를 이벤트 핸들러라 함
    • ServletContextListenner 
      • 구현
        • contextDestroyed(sce)
          • 서블릿 컨테이너가 삭제되었을 때
          • 서버가 중지 되었을 때
        • contextInitialized(sce)
          • 서블릿 컨테이너가 만들어질 때
          • 서비스가 시작할 때
          • 백그라운드 환경 셋팅작업에 사용
      • 등록    
        • web.xml
          • <listener>
            • <listener-class>풀패키지.class</listener-class>
          • </listener>
3. 에러처리
    • web.xml
      • <error-page>
        • <exception-type>java.lang.NullPointerException</exception-type>
        • <location>/servlet</location>
      • </error-page>


'교육 > Servlet&JSP' 카테고리의 다른 글

[jsp] jdbc  (0) 2018.03.05
[JSP] 태그  (0) 2018.01.21
[Servlet]상태정보 유지  (0) 2018.01.21
[Servlet] 중요 파일들 의미와 위치  (0) 2018.01.21
[Servlet&JSP] 개발 환경 구축  (0) 2018.01.21