BASHA TECH
AOP & Filter & Listener 본문
AOP는 Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 불린다. 관점 지향은 쉽게 말해 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하겠다는 것이다. 여기서 모듈화란 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것을 말한다.
필터가 사용되면서 a,b의 공통기능을 제외하고 a의 주요기능만 가능하게 함. 관심사항에만 집중할 수 있게 하면서 코드량이 획기적으로 줄어든다
이것을 FilterChain화라고 부르기도 한다.
Filter는 요청(Request)과 응답(Response)에 대한 정보들을 변경할 수 있게 개발자들에게 제공하는 서블릿 컨테이너 이다.
FilterChain은 이런 Filter가 여러개 모여서 하나의 체인을 형성하는 것 인데요,
체인을 형성한 Filter들을 거쳐가는 순서가 있습니다.
Filter가 요청정보, 즉 클라이언트가 요청하는 정보를 변경할 수 있는 서블린 컨테이너라고 위에서 언급 했는데,
두번째 Filter는 이 클라이언트의 요청하는 정보가 아닌 첫번째 Filter에 의해서 변경된 요청 정보를 변경하게 됩니다.
참고:
https://jun-itworld.tistory.com/28
리스너와 필터의 공통점
1. 둘다 서블릿이다.
(서블릿이란, 클라이언트의 요청을 처리하고, 그 결과를 반환하는 Servlet 클래스의 구현 규칙을 지킨 자바 웹 프로그래밍 기술)
서블릿 내용 참고:
https://xianeml.tistory.com/69
2. application의 앞단에 있다는 점임.
리스너와 필터의 차이점
1. 필터 = 특정 요청에 의해 작동된다(걸러냄) / 뒤에 있을 수도 있음
2. 리스너 = 특정 이벤트에 의해 작동된다(기다린다)
리스너와 필터 내용 참고:
https://it-mesung.tistory.com/78
'Computer > JSP' 카테고리의 다른 글
Decorator Pattern (0) | 2022.09.07 |
---|---|
프록시 패턴(Proxy Pattern) (0) | 2022.09.07 |
this.getclass().getmethod (0) | 2022.09.01 |
Redirect (0) | 2022.09.01 |
startsWith/endsWith 특정 문자로 시작하거나 끝나는지 체크 (0) | 2022.09.01 |