0. 들어가며

어서오세요. 제목은 하루만에 배우기지만 실제로는 하루만에 배우기는 어려운 코스에 오신 것을 환영합니다.

하루만 투자하면 스프링 부트로 웹 어플리케이션을 만드는 과정을 따라할 수 있습니다.

이 글은 스프링 부트를 이용해 웹을 개발하는 방법을 최대한 간결하게 설명합니다. 복잡한 이론보다는 툴과 프레임워크 사용법에 촛점을 맞추고 하나씩 따라할 수 있도록 구성했습니다. 간단하게 구성했음에도 실무에서 필요한 개념들은 간략하게 설명함으로써 배울때와 실무 사이의 괴리감을 줄일 수 있습니다.

스프링 부트는 스프링 프레임워크의 간략화한 버전으로, 강력한 대신 복잡한 설정이 필요한 스프링 프레임워크를 사용하기 편하게 축약한 버전입니다. 최소한의 설정만 가지고 웹 어플리케이션 개발을 할 수 있게 한 것이 스프링 부트의 목표입니다.

우리는 "문제"를 가지고 있고 "해결책" 이 필요합니다. 물에 빠진 사람이 구해달라고 허우적대는데 부력의 원리에 대해서 한바탕 설교를 늘어놓는다면 어떨까요? 어쩌면 설명을 듣다 말고 익사할지도 모릅니다. 물에 빠진 이들에게 필요한 것은 과학적 지식이 아니라 튜브입니다. 물에 빠진 사람이 구출되고 나서는 여러 가지 행태를 보일 수 있습니다. 누군가는 당장 수영을 배우러 갈 꺼에요. 다른 누군가는 구조요원 근처에서만 수영할 수도 있죠. 어쩌면 물에 들어갈 때 무조건 튜브를 가지고 가는 사람도 있을 것이고, 교훈은 전혀 얻지 못한 채 다시 한 번 물에 휩쓸리는 사람도 있을 겁니다. 이 글은 단순한 튜브의 역할을 합니다. 전혀 물에 뜨지 못할 때 붙잡고 있을 수 있죠. 다만 아주 작은 가시에도 찢어질 수 있는 튜브이기에, 여러 다른 글과 실전 경험으로 튜브와 수영 실력을 업그레이드하실 수 있으면 좋겠습니다.

글의 목적은 스프링 부트의 모든 기능을 익히는 것이 아니라, 전반적인 스프링 부트 프로젝트의 구조를 익히는 겁니다. 평형이든 접영이든 물 위에 뜰 수 있어야 더 어려운 수영법을 배울 수 있듯이 기초를 익히고 나면 더 많은 고급기능을 체득할 수 있을 거에요.


또한 이 글은 책으로 출간된 스프링 MVC 하루만에 배우기를 스프링 부트 버전으로 재작성한 것으로, 전반적인 흐름은 동일합니다. 만약 전작인 스프링 MVC 하루만에 배우기 가 필요하다면 아래의 링크에서 구매 혹은 보기가 가능합니다.

스프링 MVC 하루만에 배우기와 차이점은 아래와 같습니다.

-스프링 MVC 하루만에 배우기스프링 부트 하루만에 배우기

데이터베이스 레이어 MyBatis JPA
서비스 인터페이스 존재 존재하지 않음
뷰 엔진 JSP 타임리프
의존성 관리 maven gradle
DBMS MySQL H2

전체 예제는 전작의 흐름을 따라가지만, 추가적으로 책 기록을 위한 챕터가 추가되었습니다.