-
[Spring] Spring이란?Server/Spring 2020. 8. 11. 13:31
안녕하세요 :)
본격적인 개발에 들어가기 전에 Spring framework에 대해서 알아야 할 필요성을 느껴서 공부해봤습니다.
Spring Framework란?
- 엔터프라이즈급(대규모) 애플리케이션을 구축할 수 있는 가벼운 솔루션입니다.
- 원하는 부분만 가져다가 사용할 수 있도록 모듈화가 잘 되어있습니다.
- IoC 컨테이너입니다.
- 선언적으로 트랜잭션을 관리할 수 있습니다.
- 완전한 기능을 가진 MVC Framework를 제공합니다.
- AOP를 지원합니다.
- 도메인 논리 코드와 쉽게 분리될 수 있는 구조로 되어있다.
- 스프링 프레임워크는 약 20개의 모듈로 구성되어 있으며 필요한 모듈만 가져다 사용할 수 있습니다.
메시징 (Messaging, spring-messaging)
스프링 프레임워크 4는 메시지 기반 애플리케이션을 작성할 수 있는 Message, MessageChannel, MessageHandler 등을 제공합니다.
또한, 해당 모듈에는 메서드에 메시지를 맵핑하기 위한 어노테이션도 포함되어 있으며, Spring MVC 어노테이션과 유사합니다.데이터 엑서스 (Data Access) / 통합 (Integration)
- 데이터 액세스 / 통합 계층은 JDBC, ORM, OXM, JMX 및 트랜잭션 모듈로 구성되어 있습니다.
- 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 모듈과의 통합을 제공합니다.
웹(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 구현을 제공합니다.
마무리
대체적으로 스프링 프레임워크는 모듈화가 잘되어있어 많은 곳에서 사용하는 것 같았습니다.
세부적으로 모듈화가 되어있고, 구현할 기능에 맞게 개발자가 구현하면 되는 것이라서 원하는 기능에 맞게 프레임워크를 사용할 수 있을 것 같습니다.
* 해당 포스팅은 아래의 글을 참고했습니다.
www.edwith.org/boostcourse-web/lecture/20655/
'Server > Spring' 카테고리의 다른 글
[Spring] Spring IoC/DI Container (0) 2020.08.11 [Spring] Maven에 대해 이해하기 (4) 2020.08.11