티스토리 뷰
Spring Framework ?
-> 경량급 애플리케이션 프레임 워크
Spring Triangle ?
엔터프라이즈 개발의 복잡함을 상대하는 Spring의 전략
-> Portable Service Abstraction, DI, AOP, POJO
Portable Service Abstraction (서비스 추상화) |
- 기술적인 복잡함은 추상화를 통해 분리. - Low Level의 기술 구현부 / 기술을 사용하는 인터페이스부 - 개발자는 복잡한 기술 구현부를 생각할 필요 없이 인터페이스만 가져다 쓰면 된다. |
DI (Dependency Injection) | - 유연하게 확장 가능한 객체를 만들어 두고 그 관계는 외부에서 동적으로 설정. |
AOP (Aspect Oriented Programming) | - 핵심 기능과 공통 기능을 분리해서 모듈화 시킬 수 있도록 해주는 기술 |
POJO (Plain Old Java Object) | - 일반적 자바 오브젝트 - 특정 환경이나 규약에 종속되지 않고 JVM만 있으면 사용할 수 있는 객체. |
Spring Framework 기능 요소
출처 : Tacademy
Spring Core | - Spring Framework의 기본 기능을 제공. - 이 모듈에 있는 BeanFactory는 Spring의 기본 컨테이너 이면서 스프링 DI의 기반. |
Spring AOP | - AOP 모듈을 통해 Aspect 지향 프로그래밍을 지원. - AOP 모듈은 스프링 어플리케이션에서 Aspect를 개발할 수 있는 기반 지원. |
Spring ORM | - Mybatis, Hibernate, JPA 등의 ORM 프레임워크와의 연결고리 제공. - ORM 제품들을 Spring의 기능과 조합해서 사용할 수 있도록 함. |
Spring DAO | - JDBC 코딩이나 예외처리 부분을 간편화. - AOP 모듈을 통해 트랜젝션 관리 서비스 제공. |
Spring Web | - 웹 어플리케이션 개발에 필요한 기본 기능을 제공. - Webwork나 Struts와 같은 다른 웹 어플리케이션 프레임워크와의 통합을 지원. |
Spring Context | - Spring Core의 기능을 확장한 모듈. - 국제화 메시지, 애플리케이션, 생명주기 이벤트, 유효성 검증 등을 지원. |
Spring Web MVC | - 사용자 인터페이스가 어플리케이션 로직과 분리되는 웹 어플리케이션을 만들 경우, 일반적으로 사용하는 패러다임. |
'Java > Spring' 카테고리의 다른 글
사용자 관리 프로젝트 아키텍쳐 (0) | 2017.01.08 |
---|---|
Annotation을 이용한 Bean 등록 (0) | 2017.01.07 |
Bean 의존 관계 설정 방법 (0) | 2017.01.07 |
간단한 POJO 클래스를 통한 DI 이해 (0) | 2017.01.07 |
IoC (Inversion of Control)와 DI (Dependency Injection) (0) | 2017.01.06 |