티스토리 뷰
자바 스프링 포트폴리오 Framework란? 8개 종류 (Java Spring Portfolio)
vicddory 2017. 1. 23. 16:30목차
자바 스프링 포트폴리오 Framework란? 8개 종류 (Java Spring Portfolio)
자바 스프링 포트폴리오1. 웹 플로
자바 스프링 웹 플로(Spring Web Flow)는 스프링의 코어 MVC 프레임워크를 기반으로 목표를 향한다. 자바 스프링 웹 플로는 사용자를 안내하는(마법사나 장바구니를 떠올리면 된다) 대화형, 흐름기반 웹 애플리케이션 구축을 지원한다. 자바 스프링 웹 플로에 대한 더 많은 정보는 홈페이지에서 확인할 수 있다.
[Java Sprint Portfolio 프레임워크 종류 8개]
자바 스프링 포트폴리오2. 웹 서비스
코어 스프링 프레임워크는 웹 서비스로 스프링 빈을 선언적으로 배포할 수 있지만, 이러한 서비스는 틀림없이 구조적으로 열악한 구현우선(contract-last) 모델을 기반으로 한다. 서비스에 대한 규약은 빈의 인터페이스에서 결정된다.
자바 스프링 웹 서비스(Spring Web Services)는 규약 우선(contract-first) 웹 서비스 모델을 제공하는데, 여기서 서비스 규약을 충족하기 위해서 서비스 구현제가 작성된다. 더많은 정보는 스프링 웹 서비스의 홈페이지에서 확인할 수 있다.
구현 우선(contract-last) 모델은 자바 소스 코드를 먼저 작성한 후에 WSDL을 자동 생성하여 구현하는 방식(code-first라고도 함)이며, 규약우선(contract-first) 모델은 WSDL 파일을 먼저 작성한 후 자바 소스 코드를 작성하는 방식이다.
자바 스프링 포트폴리오3. 시큐리티
보안은 많은 애플리케이션의 핵심 요소다. 스프링 AOP를 이용하여 구현된 스프링 시큐리티(Spring Security)는 스프링 기반 애플리케이션에 선언적 보안 메커니즘을 제공한다. 더많은 정보는 스프링 시큐리티의 홈페이지에서 확인할 수 있다.
자바 스프링 포트폴리오4. 인티그레이션
많은 엔터프라이즈 애플리케이션은 다른 엔터프라이즈 애플리케이션과 상호작용해야 한다. 스프링 인티그레이션(Spring Integration)은 몇 가지 공통적인 통합 패턴의 구현체를 스프링의 선언적 방식으로 제공한다.
스프링 인티그레이션에 대한 더 많은 정보는 마크 피셔(Mark Fisher), 요나스 파트너(Jonas Partner), 마리우스 보고예비치(Marius Bogoevici), 그리고 이바인 펄드(Iwein Fuld)가 쓴 "Spring Integration in Action"을 읽어보거나 스프링 인티그레이션 홈페이지를 살펴보기 바란다
[Java Sprint Portfolio 프레임워크 종류 8개]
자바 스프링 포트폴리오5. 배치
데이터의 일괄 작업이 필요하다면 배치 처리만큼 좋은 방법은 없다. 배치 애플리케이션을 개발한다면 스프링 배치(Spring Batch)를 이용해 스프링의 강건한 POJO 지향 개발 모델을 활용할 수 있다. 티에리 템플라(Thierry Templier)와 아르노 꼬골르느(Arnaud Cogoluegnes)가 쓴 "Spring Batch in Action"에서 많은 정보를 얻을 수 있다. 또한 스프링 배치 홈페이지에서 스프링 배치에 대해 배울 수 있다.
자바 스프링 포트폴리오6. 소셜
소셜 네트워크는 인터넷에서 떠오르는 트렌드로, 페이스북이나 트위터 등의 소셜 네트워크 사이트와의 통합 기능을 갖춘 애플리케이션도 계속 증가하는 추세다. 관심있는 분야라면 스프링의 소셜 네트워크 확장 기능은 스프링 소셜(Spring Social)을 살펴보기 바란다. 스프링 소셜은 비교적 최신 분야이며 보다 많은 정보는 사이트에서 확인 가능하다.
[Java Sprint Portfolio 프레임워크 종류 8개]
자바 스프링 포트폴리오7. 모바일
모바일 애플리케이션은 소프트웨어 개발의 또 하나의 중요한 분야다. 많은 사용자들이 선호하는 단말이 스마트폰과 태블릿 기기로 이동하고 있다. 스프링 모바일(Spring Mobile)은 모바일 웹 애플리케이션 개발을 지원하는 스프링의 새로운 확장 기능이다.
스프링 모바일과 관련된 프로젝트로는 스프링 안드로이드(Spring Android) 프로젝트가 있다. 이 새로운 프로젝트는 스프링 프레임워크가 제공하는 단순하므로 안드로이드용 네이티브 애플리케이션 개발에 적용하는 데 그 목적이 있다. 처음부터 이 프로젝트는 안드로이드 애플리케이션 내에서 사용할 수 있는 스프링의 RestTemplate 버전을 제공한다. 더 다양한 내용은 아래 두 사이트에서 배울 수 있다.
[Java Sprint Portfolio 프레임워크 종류 8개]
자바 스프링 포트폴리오8. DM
스프링 DM(Spring Dynamic Module)은 OSGi의 동적 모듈화 방식과 스프링의 선언적 DI가 조화를 이룬다. 스프링 DM을 이용하면, OSGi 프레임워크 내에서 서비스를 선언적으로 발행하고 소비하는 별개의 높은 응집도와 낮은 결합도의 모듈로 구성된 애플리케이션을 구축할 수 있다.
주목할 점은 OSGi 세계에서의 엄청난 충격으로 인해 선언적 OSGi 서비스에 대한 스프링 DM모델은 OSGi Blueprint Container로 OSGi 명세 자체가 공식화됐다. 또한 SpringSource는 스프링 DM을 Gemini 패밀리의 일부로 이클립스 프로젝트로 전환했으며, 지금은 Gemini Blueprint로 알려져 있다.
출처 - 스프링 인 액션 3판, 크레이크 월즈, 홍영표역
자바 스프링 포트폴리오 Framework란? 8개 종류 (Java Spring Portfolio)