spring(3)
-
Spring AOP - 개념
실제 비즈니스에, 템플릿화된 Non-비즈니스 영역에 대한 고민 (로그, 트랜잭션 등)에서 시작. 아래의 예를 보자. //아래의 Source 예제는 Dmitry Noskov님의 Spring AOP 사용 예제입니다.. //1. Simple Service public Order getOrder(BigDecimal orderId) { return (Order) factory.openSession().get(Order.class, orderId); } //2. Add permissions check public Order getOrder(BigDecimal orderId) { if (hasOrderPermission(orderId)) { return (Order) factory.openSession().get(O..
2020.11.30 -
Spring Core - IoC, DI, Context And Bean
보통 main메소드에서 시작해서 개발자의 의도대로 오브젝트가 생성되고 실행된다. 그런데 서블릿은 컨테이너가 권한을 가진다. 그렇다. 이미 제어 역전은 폭넓게 적용되고 있는 것이다. 템블릿 메소드 패턴도 슈퍼클래스로 템플릿 메소드를 통해 제어를 넘긴 것이다. 이것도 Ioc를 기반으로한 패턴이다. 팩토리 패턴도 객체생성에 대한 제어를 애플리케이션 코드에서 분리하는 IoC의 적용 패턴으로 볼 수 있다. > 팩토리 클래스를 하나의 Configuration Context 로 보면 이해됨 ※ 라이브러리 VS 프레임워크 - 라이브러리는 사용자가 능동적으로 애플리케이션의 흐름을 직접 제어하면서 사용하는 것 - 프레임워크는 사용자의 애플리케이션 코드를 프레임워크의 기반하에 흐름을 주도하는 것이다. 즉, 프레임워크는 분명..
2020.10.22 -
Spring Overview
스프링의 목표 1. J2EE 개발을 보다 쉽게 2. Business 외의 일반적인 Task를 보다 쉽게 3. 좋은 프로그래밍 습관으로의 유도 4. 개발자는 domain에 집중 Core Container 1. Core & Beans : IoC 및 Dependency Injection 등의 기능을 포함한 프레임워크의 기본적인 주요 부분을 제공. 2. Context : Bean을 정의하고 등록하고 설정하는 등등의 모든 환경 정보 Repository 3. Expression Language AOP, Instrumentation 1. AOP : aspect oriented programming 기능 지원 2. Instrumentation : application에 사용될 수 있는 class 로더 및 metics ..
2020.10.20