I. Spring의 개요
가. Spring의 정의
- EJB 기반의 복잡함과 무거움을 극복하고 개발 생산성 향상과 고품질의 시스템 개발을 위한 자바 플랫폼 상의 경량화 된 오픈 소스 웹 어플리케이션 프레임워크
나. Spring의 특징
- 객체관리, 제어반전(IoC), 의존성 주입(DI), 관점 지향 프로그래밍(AOP), 영속성
II. Spring Framework의 구성도 및 구성요소
가. Spring Framework의 구성도
![]() |
나. Spring Framework의 구성요소
구분 |
기능 및 역할 |
Spring Core (IoC) |
- IoC (Inversion of Control) Container - 객체간 의존성 감소로 코드 변경에 유연한 대처 가능하고 재사용 가능성 제고 시킴 - 컨테이너가 객체의 생성부터 소멸까지 관리 - 컴포넌트를 개별적으로 테스트 가능 - Bean Factory를 기반으로 Bean 클래스들을 제어할 수 있는 기능을 지원 |
AOP |
- 트랜잭션 관리, 로깅 등과 같은 관심사에 대한 모듈화 - 횡단관심사의 분리로 코드 변경 없이 더해지거나 제거 가능(유지보수성, 변경용이성) - Aspect Oriented Programming을 지원하는 기능 |
ORM |
- 객체관계형 모델 지원 - 다양한 DB 접속 방식 및 인터페이스 지원 - Object Relation Mapping 프레임워크인 Hibernate, IBatis, JDO와의 결합을 지원하기 위한 기능 - Hibernate, IBatis, JDO 프레임워크와 쉽게 통합하는 것이 가능 |
DAO |
- 단순화된 JDBC 기능 - 대부분의 ORM 프레임워크와 통합 - 트랜잭션 관리 기능 - DAO개발을 좀 더 쉽고, 일관된 방법으로 개발하는 것이 가능하도록 지원 |
Web |
- Application Context와 Multipart Request등의 기능을 지원 - Struts, Webwork와 같은 프레임워크의 통합을 지원하는 부분을 담당 |
Context |
- 원격접근 - EJB 대체 및 통합 - 스케줄링 및 동적 언어 지원 - 테스트 기반환경 제공 - Spring Core에서 지원하는 기능 외에 추가적인 기능들과 좀 더 쉬운 개발이 가능하도록 지원 - 국제화된 메시지, Application 생명주기 이벤트, 유효성 검증 등 - JNDI, EJB등을 위한 Adaptor들을 포함 |
MVC |
- Spring Web MVC - 이벤트 기반 프레임워크 - 타 웹 어플리케이션 프레임워크와 대체 통합 - Spring 프레임워크에서 독립적으로 Web UI Layer에 Model-View-Controller를 지원하기 위한 기능 - Velocity, Excel, PDF와 같은 다양한 UI 기술들을 사용하기 위한 API를 제공 |
'IT기술노트 > IT경영전략' 카테고리의 다른 글
정보화전략계획(ISP) 수립 공통가이드 5판 (0) | 2021.12.29 |
---|---|
정보화전략계획(ISP) 수립 공통가이드 5판 개정사항 (0) | 2021.12.17 |
Cobit 5.0 5원칙, 7동인 (0) | 2021.05.06 |
EDGI(E-Government Development Index) (0) | 2021.02.14 |
전자정부 표준 프레임워크 (0) | 2021.02.14 |
OAS(Open Adoption Software) (0) | 2021.02.14 |
OSS 라이센스 (0) | 2021.02.14 |
OSS(Open Source Software) (0) | 2021.02.14 |
댓글