Spring : 관점 지향 프로그래밍(AOP)
관점 지향 프로그래밍(AOP : Aspect-Oriented Programming)우선 AOP는 기존의 OOP(Object-Oriented Programming, 객체 지향 프로그래밍)를 보완하는 개념으로, OOP에서는 해결하기 어려운 문제들을 보다 쉽게 해결할 수 있게 도와주는 개념이다.AOP는 관점을 기준으로 묶어 개발하는 방식을 의미하며, 여기서 관점(aspect)이란 어떤 기능을 구현할 때 ‘핵심 기능’과 ‘부가 기능’으로 구분해 각각을 하나의 관점으로 보는 것을 의미한다.’핵심 기능’은 우리가 적용하고자 하는 핵심 비즈니스 로직이다.‘부가 기능’은 횡단적 관심사항 (Cross-Cutting Concerns)이라고도 하며 핵심 기능을 수행하기 위해서 행해지는 로깅, 트랜잭션 관리, 보안, DB연결..