반응형

 

 

 

 

 

 

 

1. Spring Framework란?

 

  • 엔터프라이즈급 어플리케이션을 구축할 수 있는 가벼운 솔루션이자, 원스-스탑-숍(One-Stop-Shop)
  • 원하는 부분만 가져다 사용할 수 있도록 모듈화가 잘 되어 있습니다.
  • IoC 컨테이너입니다.
  • 선언적으로 트랜잭션을 관리할 수 있습니다.
  • 완전한 기능을 갖춘 MVC Framework를 제공합니다.
  • AOP 지원합니다.
  • 스프링은 도메인 논리 코드와 쉽게 분리될 수 있는 구조로 되어 있습니다.

 

 

 

 

 

 

 

2. 프레임 워크 모듈

  • 스프링 프레임워크는 약 20개의 모듈로 구성되어 있습니다.
  • 필요한 모듈만 가져다 사용할 수 있습니다.

 

 

 

3. AOP 와 인스트루멘테이션 (Instrumentation)

  • spring-AOP : AOP 얼라이언스(Alliance)와 호환되는 방법으로 AOP를 지원합니다.
  • spring-aspects : AspectJ와의 통합을 제공합니다.
  • spring-instrument : 인스트루멘테이션을 지원하는 클래스와 특정 WAS에서 사용하는 클래스로 더 구현체를 제공합니다. 참고로 BCI(Byte Code Instrumentations)은 런타임이나 로드(Load) 때 클래스의 바이트 코드에 변경을 가하는 방법을 말합니다.

 

 

 

 

 

4. 메시징(Messaging)

  • spring-messaging : 스프링 프레임워크 4는 메시지 기반 어플리케이션을 작성할 수 있는 Message, MessageChannel, MessageHandler 등을 제공합니다. 또한, 해당 모듈에는 메소드에 메시지를 맵핑하기 위한 어노테이션도 포함되어 있으며, Spring MVC 어노테이션과 유사합니다.

 

 

 

5. 데이터 엑서스(Data Access) / 통합(Integration)

  • 데이터 엑세스/통합 계층은 JDBC, ORM, OXM, JMS 및 트랜잭션 모듈로 구성되어 있다.
  • spring-jdbc : 자바 JDBC프로그래밍을 쉽게 할 수 있도록 기능을 제공합니다.
  • spring-tx : 선언적 트랜잭션 관리를 할 수 있는 기능을 제공합니다.
  • spring-orm : JPA, JDO및 Hibernate를 포함한 ORM API를 위한 통합 레이어를 제공합니다.
  • spring-oxm : JAXB, Castor, XMLBeans, JiBX 및 XStream과 같은 Object/XML 맵핑을 지원합니다.
  • spring-jms : 메시지 생성(producing) 및 사용(consuming)을 위한 기능을 제공, Spring Framework 4.1부터 spring-messaging모듈과의 통합을 제공합니다.

 

 

6. 웹(Web)

  • 웹 계층은 spring-web, spring-webmvc, spring-websocket, spring-webmvc-portlet 모듈로 구성됩니다.
  • spring-web : 멀티 파트 파일 업로드, 서블릿 리스너 등 웹 지향 통합 기능을 제공한다. HTTP클라이언트와 Spring의 원격 지원을 위한 웹 관련 부분을 제공합니다.
  • spring-webmvc : Web-Servlet 모듈이라고도 불리며, Spring MVC 및 REST 웹 서비스 구현을 포함합니다.
  • spring-websocket : 웹 소켓을 지원합니다.
  • spring-webmvc-portlet : 포틀릿 환경에서 사용할 MVC 구현을 제공합니다.

 

 

Q. 프레임워크와 라이브러리의 차이는 무엇일까?

A. 프레임워크는 골격이 아닐까 싶습니다. 프레임워크라는 골격을 기반으로 우리가 원하는대로 살을 붙여 제품을 만드는 것입니다. 그리고 그 살을 붙일 때 효과적으로 붙일 수 있도록 도와주는 도구가 라이브러리라고 생각합니다.

 

 

 

 

1. Spring Framework란?

- A lightweight solution for deploying enterprise-class applications, one-stop-shop
- It is well modularized so that you can use only the parts you want.
- This is an IoC container.
- You can manage transactions declaratively.
- Provides a fully functional MVC framework.
- AOP is supported.
- The spring has a structure that can be easily separated from the domain logic code.

 

 

 

2. Framework Module

The spring framework consists of approximately 20 modules.
Only the modules you need can be imported and used.


3. AOP Instrumentation

spring-AOP : supports AOP in a way that is compatible with the AOP Alliance.
spring-spect : provides integration with AspectJ.
spring-instrument : Provides more implementation into classes that support instrumentation and classes used by certain WASs. Note that Byte Code Instrumentation (BCI) refers to how to change the class' byte code at runtime or load.

 

 

 

 

4. Messaging

Spring-messaging: Spring Framework 4 provides messages, message channels, message handlers, and more to create message-based applications. The module also contains an annotation for mapping messages to the method, similar to Spring MVC annotation.



5. Data Access / Integration

The data access/integration layer consists of JDBC, ORM, OXM, JMS, and transaction modules.
spring-jdbc : Provides functionality to facilitate Java JDBC programming.
spring-tx : Provides the ability to manage declarative transactions.
spring-orm : Provides an integrated layer for ORM API including JPA, JDO, and Hibernate.
spring-oxm : JAXB, Castor, XMLBeans, JiBX 및 XStream과 같은 Object/XML 맵핑을 지원합니다.
Spring-jms: Provides functionality for generating and using messages and provides integration with spring-messaging modules from Spring Framework 4.1.

 

 

 

 

 

6. Web (Web)
- Web layer is consist of spring-web, spring-webmvc, spring-websocket, spring-webmvc-portlet modules.
- Spring-web: It provides web-oriented integration functions such as multi-part file upload and servlet listener. Provides Web-- - related parts for remote support for HTTP clients and Spring.
- spring-webmvc : also known as Web-Servlet Module, includes Spring MVC and REST Web Service implementations.
- spring-websocket : supports web sockets.
- spring-webmvc-portlet : Provides MVC implementation for use in portlet environment.

 

 

 

Q. What is the diffrence between framework and library ?

A. I think the framework is a skeleton. Based on the framework, we make the products as we want. And libraries are the tools that we use at that time.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형

+ Recent posts