본문 바로가기
디자인 패턴

데코레이터 패턴이란(Decorator Pattern)

by chief_sac 2021. 7. 18.
반응형

데코레이터 필터 패턴

꼭필요하지 않은 데코레이션을 필터링하는것

뒤에서 파일을 저장하거나 하는과저의 작업을 앞에서 처리해준다(필요하다면 몇개든 가져다가 넣을수도있다)

Http Request, response를 가로채서 핵심 애플리케이션에 영향을 미치지 않고 전,후처리가 가능

필터체인

: 필터는 모듈로 블록처럼 쌓을 수 있도록 고안된 것이기에 다양한 방식으로 섞어서 사용할 수 있다.

필터체인은 다음에 실행할 필터가 무엇인지 알고 있다.

필터 선언
<filter>
  <filter-name>MyFilter</filter-name>
  <filter-class>net.agilejava.jspdp.MyFilter</filter-class>
</filter>
<filter-mapping>
  <filter-name>MyFilter</filter-name>
  <url-pattern>*.do</url-pattern>  <!-- URL 패턴과 필터 매핑 선언-->
</filter-mapping>
<filter-mapping>
  <filter-name>MyFilter</filter-name>
  <servlet-name>AdviceServlet</servlet-name>  <!-- 서블릿 이름에 필터매칭 선언-->
</filter-mapping>

컨테이너가 필터 순서 정하는 규칙

1) url패턴으로 적용되는 필터가 제일 먼저 옴.

클라이언트가 요청을 날릴 때, 일치하는 모든 필터를 모두 체인에 넣고 하나씩 실행함.

2) URL패턴으로 일치하는 필터들이 체인에 모두 들어가고 난 다음 으로 일치하는 필터를 찾아 그 정의된 순서대로 체인에 등록함.

반응형

'디자인 패턴' 카테고리의 다른 글

퍼사드패턴(Facade Pattern)  (0) 2021.07.17
데코레이터 필터 패턴  (0) 2021.05.30