개발자 선배가 후배에게 전하는 스프링 꿀팁!
<스프링3 입문>이 스프링4 버전으로 돌아왔습니다. <스프링3 입문>의 친절한 설명을 그대로 따르되 스프링4에 맞춰 내용을 더하고 다듬었습니다. 각 장의 주요 내용을 살펴보면 다음과 같습니다.
1장. 기초 지식 쌓기
스프링과 웹 애플리케이션에 대한 기초 지식을 알아봅니다. 스프링에 대한 자세한 설명보다는 스프링 및 웹 애플리케이션 개발에 중요한 애플리케이션 아키텍처를 살펴봅니다. 초심자에게는 필수입니다.
2~3장. 스프링 코어 살펴보기
2장에서는 스프링 코어의 하나인 DI를 살펴봅니다. DI의 개요를 설명하고 스프링에서 DI를 어떻게 이용하는지, 그 특징과 사용법을 이해할 수 있습니다. 3장에서는 스프링 코어의 또 다른 부분인 AOP를 알아봅니다. 2장과 3장을 끝까지 읽으면 DI와 AOP를 사용해서 어떻게 웹 애플리케이션을 만들어가는지 그 골격을 이해할 수 있습니다.
4~6장. 데이터 액세스 층, 비즈니스 로직 층, 프레젠테이션 층 이해하기
4~6장에 걸쳐 데이터 액세스 층, 비즈니스 로직 층, 프레젠테이션 층을 살펴봅니다.
먼저 4장에서 데이터 액세스 층의 설계상 문제점과 해결책을 알아본 다음, 스프링 JDBC와 스프링 Data JPA를 살펴봅니다. 스프링 JDBC와 스프링 Data JPA의 이점 및 사용법을 이해할 수 있을 것입니다.
5장에서는 트랜잭션이란 무엇인지를 살펴본 다음, 스프링의 트랜잭션 기능을 알아봅니다. 선언적 트랜잭션과 명시적 트랜잭션을 이해하는 것이 목표입니다.
6장에서는 스프링의 MVC 프레임워크를 샘플 애플리케이션을 통해 설명합니다. 주류로 자리매김한 REST 통신 등도 해보면서 MVC 프레임워크를 구성하는 기본적인 클래스의 이용 방법을 알아봅니다. 어떤 의미에서는 웹 애플리케이션의 핵심이라고 말할 수도 있는 프레젠테이션 층의 기술을 충분히 이해할 수 있을 것입니다.
7장. 스프링 시큐리티를 사용해 인증·인가 기능 구현하기
웹 애플리케이션에는 반드시 필요한 동시에, 그 중요성에 비해서는 이해하고 있는 사람이 적다고 생각되는 인증·인가 기능을 설명합니다. 기본적인 개념부터 시작해서 웹 애플리케이션에 스프링 시큐리티를 도입해서 인증·인가 기능을 구현하는 방법까지 알아봅니다.
8장. 하이버네이트, JPA, MyBatis와 연계하는 방법 알아보기
대표적인 ORM 데이터 액세스 기술인 하이버네이트, JPA, MyBatis와 연계하는 방법을 알아봅니다. 이 장을 마치면 ORM 단독으로 사용하는 것보다는 스프링과 연계하는 편이 좋다는 점을 알수 있으며, 각각의 ORM에 대한 특징을 이해해서 실제 현장에서 무엇이 최적인가를 판단할 수 있을 것입니다.
9~10장. 스프링 캐시와 스프링 배치 알아보기
캐시는 웹 애플리케이션을 만들 때에 의외로 많이 사용되는 기술입니다. 9장에서는 스프링 캐시를 이해하기 위해 샘플을 준비해서 간략하게 설명합니다. 웹 애플리케이션에서 캐시를 어떻게 사용하면 좋은지 이해할 수 있습니다.
배치를 사용하지 않는 프로젝트는 없을 것입니다. 10장에서는 배치 처리의 기초를 설명하고, 스프링 배치에 대해 간단한 예부터 난이도가 높은 샘플까지 순서대로 알아봅니다. 배치는 무엇인지, 배치는 어떻게 만들어야 하는지를 알 수 있습니다.
11장. 스프링 부트로 클라우드 네이티브 맛보기
이 장의 내용을 이해한다면 최신 경향의 개발을 경험해봤다고 할 수 있습니다. 이 장에서는 클라우드 네이티브 입문으로서 스프링 부트에 대해 설명합니다. 최근 각광받는 마이크로서비스와 클라우드 네이티브란 어떤 것인지 체험할 수 있습니다.