엔터프라이즈급이란?
> 대규모 데이터 처리와 트랜잭션이 동시에 여러 사용자로 부터 행해지는 매우 큰 규모의 환경
POJO(Plain Old Java Object)란?
> 이전의 자바는 EJB를 거치면서 무겁기도 하고 특정 환경에 종속되는 등 자바다움을 잃어가기 시작
> 상속, 인터페이스가 필요없는, 속성과 기능만 있는 아주 단순하고 가벼운 객체를 의미
> POJO는 gettet/setter를 가진 단순 자바 오브젝트로 정의
> 장점 : 의존성이 없고 추후 테스트 및 유지보수가 편리함
일반적인 프로그램에서는..
반면 IOC는..
DL(Dependency Lookup, 의존성 검색)
컨테이너에서는 객체들을 관리하기 위해 별도의 저장소에 Bean을 저장하는데 저장소에 저장되어 있는 컨테이너에서 제공하는 API 를 이용하여 사용하고자 하는 Bean을 검색하는 방법
DI(Dependency Injection, 의존성 주입)
의존성 주입이란 객체가 서로 의존하는 관계가 되게 의존성을 주입하는 것
객체지향 프로그램에서 의존성 이란 하나의 객체가 어떠한 다른 객체를 사용하고 있음을 의미
각 클래스(POJO 객체들) 사이에 필요로 하는 의존 관계를 Bean 설정 정보를 바탕으로 컨테이너가 자동으로 연결해 주는 것
OOP에서는..
AOP에서는..
이식 가능한 서비스 추상화
완성도가 높은 라이브러리와 연결할 수 있는 인터페이스 제공
다른 프레임워크들과의 통합 지원
Model-View-Controller 구조로 사용자 인터페이스와 비지니스 로직을 분리하여 개발 하는 것
Model1과 Model2로 나누어져 있으며, 일반적인 MVC는 Model2를 지칭
Spring Core는 Spring Container 의미
Container는 Spring Framework의 핵심이며 그중 핵심은 Bean Factory Container
Bean Factory는 IOC패턴을 적용하여 객체 구성 부터 의존성 처리까지 모든 일을 담당하는 역할
Spring Framework의 Context 정보들을 제공하는 설정 파일
Spring Context는 JNDI, EJB, Validation, Scheduiling, Internaliztaion 등 엔터프라이즈 서비스들을 포함하고 있음
Spring Framework에서 관점지향 프로그래밍을 할 수 있고, AOP를 적용 할수 있게 도와주는 Module
Data Access Object
Database Data에 접근하는 객체
Spring JDBC DAO는 추상 레이어 지원
Object Relational Mapping
간단하게 객체와의 관계 설정을 하는 것
Spring에서 Ibatis, Hibernate 등 인기 있는 객체 관계형 도구를 사용할 수 있도록 지원
Application Module에 내장되어 있음
Web 기반 응용 프로그램에 대한 Context를 제공, 일반적인 Web Application 개발에 필요한 기본적인 기능을 지원
Model2 구조로 Apllication을 만들 수 있도록 지원
웹 응용 프로그램을 작성하기 위한 완전한 기능을 갖춘 MVC를 구현
전략 인터페이스를 통해 고급 구성 가능하며 JSP, Velocity, Tiles, iText 및 POI를 포함한 수많은 뷰 기술을 지원