스프링 구성요소(모듈)

사용자 삽입 이미지
The Code Container
– provides the fundamental functionality of the Spring
– org.springframework.beans.factory.BeanFactory
    – 스프링의 가장 기본이 되는 컨테이너.
    – 스프링 DI를 제공하는 기반 시설.
– Chapter 2에서 자세히 다룬다.

Application context module
– context module is what makes it a framework.
    – BeanFactory를 확장하여 다음의 기능들을 추가함.
        – I18N 메시징
        – 이벤트 핸들링
        – Validation
– supplies many enterprise services
    – email
    – JNDI
    – EJB와의 연동
    – templating frameworks(Velocity, FreeMarker)와의 연동

Spring’s AOP module
– serves as the basis for developing your own aspects for your Spring enabled application.
– AOP Alliance 인터페이스에 기반하였다.
– AspectJ 지원.
– Chapter 4에서 자세히 다룬다.

JDBC abstraction and the DAO module
– 반복 되는 코드를 추상화 시켜서 코드 작성을 간결하고 깔끔하게 할 수 있다.
– 각 DB 벤더들의 에러 코드를 의미가 있는 에러 메시지로 변환하여 RuntimeException으로 던지는 추상화 계층 제공.
– Chapter 5에서 자세히 다룬다.

Object-relational mapping (ORM) integration module
– JDBC를 직접 사용하는 대신 ORM 사용을 선호하는 분들을 위해 만들어둔 추상화 계층.
– Hibernate, JPA, JDO, iBATIS SQL Maps 지원.
– Chapter 5에서 자세히 다룬다.

Java Management Extensions (JMX)
– makes it easy to expose your application’s beans as JMX Mbeans.
– makes it possible to monitor and reconfigure a running application.
– Chapter 12에서 자세히 다룬다.

Java EE Connector API (JCA)
– Java EE Connection API (JCA)는 여러 메인 프레임과 DB를 포함하고 있는 엔터프라이즈 시스템들을 통합하기 위한 표준 API.
– JDBC 지원 기능과 마찬가지로 JCA 코딩에서 반복되는 부분을 추상화 시키는 형태로 지원.

The Spring MVC framework
– Model, View, Controller(MVC) 패턴은 UI와 애플리케이션 로직을 분리하기 위한 접근 방법
– 자체 MVC 기능 구현 함.
– Chapter 14, 15에서 자세히 다룬다.

Spring Portlet MVC
– portlet-based applications aggregate several bits of functionality on a single web page.
– Spring Portlet MVC builds on Spring MVC to provide a set of controllers that support Java’s portlet API.

Spring’s web module
– Spring MVC 와 Spring Portlet MVC를 지원하기 위해 기반이 되는 클래스들.
– Apache Struts 또는 Java-Server Faces (JSF)와 연동 지원.

Remoting
– 자신의 자바 객체를 remote 객체로 공개할 수 있으며, 외부의 remote 객체를 애플리케이션에 엮어서 마치 local – POJO 인 것처럼 사용하기 쉽게 해준다.
– RMI, Hessian, Burlap, JAX-RPC, Spring의 Http Invoker
– Chapter 8에서 자세히 다룬다.

Java Message Service (JMS)
– Remoting에 비해 보다 신뢰성있는 통신이 가능.
– helps you send messages to JMS message queues and topics.
– helps message-driven POJOs that are capable of consuming asynchronous messages.
– Chapter 10에서 자세히 다룬다.

참조 : Spring In Action 2nd edition