본문 바로가기

Spring/개념

(2)
[Spring] AOP AOP 부가기능을 똑 떼어서, 재사용하기 위한 것이다. 인프라 로직 (부가기능) 애플리케이션의 전 영역에서 나타날 수 있다 중복 코드를 만들어 낼 가능성 - 유지보수 힘들어짐 비즈니스 로직과 함께 있으면, 비즈니스 로직을 이해하기 어려워진다 비즈니스 로직 위에 횡단으로(가로로) 같은 로직들이 위치해있기 때문에, 인프라 로직은 횡단 관심사라고도 불린다. AOP (Aspect Oriented Programming) 관점 지향 프로그래밍. 즉, 횡단 관심사에 따라 프로그래밍 한다고 생각하면 된다. 자바에서는 AspectJ 라는 구현체로 AOP가 구현되어있다. 부가기능을 똑 떼어서, 재사용하기 위한 것이다. 그럼, 1. 어떤 부가기능을, 2. 언제, 3. 어디에 사용해야할까? 1번과 2번 -> Advice로 정..
[Spring] 컨테이너, IoC, DI, Bean 컨테이너 컨테이너는 인스턴스의 생명주기를 관리하며, 생성된 인스턴스에게 추가적인 기능을 제공합니다. 예를 들어, Servlet을 실행해주는 WAS는 Servlet 컨테이너를 가지고 있다고 말합니다. WAS는 웹 브라우저로부터 서블릿 URL에 해당하는 요청을 받으면, 서블릿을 메모리에 올린 후 실행합니다. 개발자가 서블릿 클래스를 작성했지만, 실제로 메모리에 올리고 실행하는 것은 WAS가 가지고 있는 Servlet 컨테이너입니다. Servlet컨테이너는 동일한 서블릿에 해당하는 요청을 받으면, 또 메모리에 올리지 않고 기존에 메모리에 올라간 서블릿을 실행하여 그 결과를 웹 브라우저에게 전달합니다. 컨테이너는 보통 인스턴스의 생명주기를 관리하며, 생성된 인스턴스들에게 추가적인 기능을 제공하는 것을 말합니다...