
Java/Spring Boot
[Java / Spring Boot] AOP와 Interceptor, Configuration
AOP (Aspect-oriented Programming) 관점 지향 프로그래밍관점 지향 프로그래밍으로 여러 관점에 따라 사용되는 기능들을 모듈화하여 처리하는 프로그래밍 패러다임이다. 예를 들어 게시판 기능을 만든다고 했을 때, 파란색 박스는 회원, 비회원이 모두 이용 가능한 기능이고 빨간색 박스는 회원만 이용 가능한 기능이라면 이 또한 관점 지향 프로그래밍에 해당한다. 기능 분리말고도 컨트롤러, 리파지토리, 컴포넌트 관점 등 역할로도 관점을 분리하여 여러 관점으로 묶어 볼 수 있다. 당연히 회원 + 비회원 기능은 모든 사용자가 접근 할 수 있지만, 회원 기능은 비회원은 접근하지 못하는 기능이다. 이 관점에서 볼 때 간섭을 하여 작업을 추가하면 회원이 이용할 수 있는 기능과 비회원이 이용할 수 있는 기..