본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

처음 배우는 스프링 부트 2 상세페이지

컴퓨터/IT 개발/프로그래밍

처음 배우는 스프링 부트 2

커뮤니티 게시판을 구현하며 배우는 입문부터 보안까지
소장종이책 정가22,000
전자책 정가20%17,600
판매가17,600
처음 배우는 스프링 부트 2 표지 이미지

처음 배우는 스프링 부트 2작품 소개

<처음 배우는 스프링 부트 2>

구현 순서에 맞춰 프로젝트를 진행하며 배우는 실전 입문서

이 책은 스프링 부트 입문자의 눈높이에 맞춰 스프링 부트 환경 설정부터 커뮤니티 게시판 구현까지를 다룹니다. 스프링 부트의 기본 개념과 다양한 스프링 부트 스타터를 이용해 커뮤니티 게시판 구축 프로젝트를 구현합니다. 스프링을 몰라도 공부할 수 있도록 가능한 한 쉽게 설명하고 따라 할 수 있게 예제 코드와 그림을 제시했습니다.

* 물론 자바를 사용할 줄은 알아야 합니다.


이 책의 구성

이 책은 1장과 2장에서 스프링 부트를 알아보고 개발 환경을 설치합니다. 3장부터 7장까지는 커뮤니티 사이트를 만듭니다. 이 과정에서 스프링 부트에서 제공하는 스타터를 사용하여 구현합니다. 해당 프로젝트를 어떠한 구조로 설계할지 어떠한 코드를 쓰는지 예제를 통해 알게 될 겁니다.

[ 1장 스프링 부트 입문하기 ]
스프링 부트의 다양한 스타터를 살펴보며 각 의존성과 부가 정보를 어떻게 확인하는지 알아봅니다. 이를 위해 스프링 부트 프로젝트의 특징을 이해하고 스프링 부트를 이용해서 어떻게 프로젝트를 구성하고 개발하는지 살펴봅니다.

[ 2장 스프링 부트 환경 설정 ]
스프링 부트 개발 환경을 구축합니다. JDK를 설치하고 인텔리제이 IDEA를 살펴봅니다. 아울러 그레이들(Gradle)로 빌드하고 멀티 프로젝트를 구성하여 공통 사용되는 코드를 재활용합니다. 이어서 1장에서 살펴보았던 분산된 의존성이 어떻게 하나로 모아져 자동 설정되는지도 알아보겠습니다.

[ 3장 스프링 부트 테스트 ]
기본적인 테스트 스타터를 알아봅니다. 스타터는 크게 두 가지 모듈로 구성됩니다. 하나는 spring-boot-test이고 다른 하나는 spring-boot-test-autoconfigure이며 테스트 관련 자동 설정 기능을 제공합니다. 보통은 spring-boot-starter-test로 두 모듈을 함께 사용합니다. 자주 사용하는 어노테이션도 살펴봅니다.

[ 4장 스프링 부트 웹 ]
스프링 부트 웹을 이용하여 커뮤니티 게시판을 만듭니다. 스프링 부트 웹은 주로 뷰 페이지나 API 용도로 사용합니다. 이 장에서는 커뮤니티 게시판의 뷰 페이지를 만드는 방법을 다루고 API는 7장에서 스프링 부트 데이터 레스트(REST)를 사용하여 다룹니다.

[ 5장 스프링 부트 시큐리티 + OAuth2 ]
스프링 부트 1.5 버전에서 지원하는 스프링 시큐리티와 OAuth2 API를 빠르고 쉽게 적용해봅니다. 2.0 버전부터는 스프링 시큐리티 내부에 OAuth2 API가 포함되었습니다. 두 가지 버전 모두 알아봅니다.

[ 6장 스프링 부트 데이터 레스트 ]
REST는 웹의 장점을 극대화하는 통신 네트워크 아키텍처입니다. REST API 개발을 기존의 MVC 패턴으로도 해보고, 스프링 부트 데이터 레스트를 사용하여 개발하며 어떻게 다른지 장단점을 비교합니다. 그 결과 제대로 REST API를 만드는 방법을 익히게 됩니다.

[ 7장 스프링 부트 배치 ]
스프링 부트 배치는 백엔드의 배치 처리 기능을 구현하는 데 사용하는 프레임워크입니다. 스프링 부트 배치를 간단히 소개하고, 스프링 부트 배치를 써야 하는 이유와 스프링 부트 배치 2.0에 강화된 기능에 대해 알아봅니다. 끝으로 휴면회원 전환 기능을 직접 개발해봅니다.

[ 부록 ]
스프링 부트로 개발하는 데 부가적으로 필요한 '코드 다이어트를 위한 롬복 프로젝트', '자동으로 LiveReload하는 devtools', '스프링 부트 빌드와 배포', '커스텀 배너 설정하기', '페이스북, 구글, 카카오 개발자센터 연동'을 다룹니다.



저자 소개

저자_ 김영재

줌인터넷에서 스프링 부트로 개발/운영하며 쌓은 노하우를 통해 스프링 부트 관련 내용을 공유하고 책을 쓰게 되었습니다. 현재는 라인플러스에서 빌링 시스템을 개발하고 있습니다.

목차

CHAPTER 1 스프링 부트 입문하기
1.1 스프링 부트 소개
1.1.1 스프링 부트 특징
1.1.2 스프링 부트와 스프링
1.2 커뮤니티 게시판 기능 고안하기
1.3 스프링 부트로 커뮤니티 게시판 설계하기
1.4 스프링 부트 스타터 들여다보기
1.4.1 스타터의 명명규칙 알아보기
1.4.2 스타터 내부의 의존성 확인 방법
1.4.3 스타터에 명시된 버전은 어떻게 확인할까?
1.4.4 스프링 부트 버전에 따라 무엇이 다른지 어떻게 알 수 있을까?
1.4.5 이 책에서 다룰 스타터
1.4.6 스프링 부트 장단점
1.5 마치며

CHAPTER 2 스프링 부트 환경 설정
2.1 JDK 설치하기
2.2 인텔리제이 IDEA 사용하기
2.2.1 커뮤니티 버전과 얼티미트 버전
2.2.2 커뮤니티 버전에서 스프링 부트 사용하기
2.2.3 얼티미트 버전에서 스프링 부트 사용하기
2.3 그레이들 설치 및 빌드하기
2.3.1 그레이들 래퍼
2.3.2 그레이들 멀티 프로젝트 구성하기
2.4 환경 프로퍼티 파일 설정하기
2.4.1 프로파일에 따른 환경 구성 분리
2.4.2 YAML 파일 매핑하기
2.5 자동 환경 설정 이해하기
2.5.1 자동 환경 설정 어노테이션
2.5.2 @EnableAutoConfiguration 살펴보기
2.5.3 자동 설정 어노테이션 살펴보기
2.5.4 H2 Console 자동 설정 적용하기
2.6 마치며

CHAPTER 3 스프링 부트 테스트
3.1 @SpringBootTest
3.2 @WebMvcTest
3.3 @DataJpaTest
3.4 @RestClientTest
3.5 @JsonTest
3.6 마치며

CHAPTER 4 스프링 부트 웹
4.1 커뮤니티 게시판 설계하기
4.2 커뮤니티 게시판 프로젝트 준비하기
4.3 커뮤니티 게시판 구현하기
4.3.1 프로젝트 의존성 구성
4.3.2 스프링 부트 웹 스타터 살펴보기
4.3.3 도메인 매핑하기
4.3.4 도메인 테스트하기
4.3.5 CommandLineRunner를 사용하여 DB에 데이터 넣기
4.3.6 게시글 리스트 기능 만들기
4.3.7 타임리프 자바 8 날짜 포맷 라이브러리 추가하기
4.3.8 페이징 처리하기
4.3.9 작성 폼 만들기
4.4 마치며

CHAPTER 5 스프링 부트 시큐리티 + OAuth2
5.1 배경지식 소개
5.1.1 스프링 부트 시큐리티
5.1.2 OAuth2
5.2 스프링 부트 시큐리티 + OAuth2 설계하기
5.3 스프링 부트 시큐리티 + OAuth2 의존성 설정하기
5.4 스프링 부트 시큐리티 + OAuth2 구현하기
5.4.1 SNS 프로퍼티 설정 및 바인딩
5.4.2 시큐리티 + OAuth2 설정하기
5.4.3 어노테이션 기반으로 User 정보 불러오기
5.4.4 인증 동작 확인하기
5.4.5 페이지 권한 분리하기
5.5 스프링 부트 2.0 기반의 OAuth2 설정하기
5.5.1 스프링 부트 2.0 버전으로 의존성 업그레이드
5.5.2 스프링 부트 2.0 방식의 OAuth2 인증 재설정
5.6 마치며

CHAPTER 6 스프링 부트 데이터 레스트
6.1 배경지식
6.1.1 REST 소개
6.1.2 RESTful 제약 조건
6.1.3 REST API 설계하기
6.2 설계하기
6.2.1 MVC 패턴을 활용하는 방법
6.2.2 스프링 부트 데이터 레스트를 활용하는 방법
6.3 스프링 부트 MVC 패턴으로 REST API 구현하기
6.3.1 준비하기
6.3.2 REST API 구현하기
6.3.3 CORS 허용 및 시큐리티 설정
6.3.4 생성, 수정, 삭제 구현
6.3.5 동작 확인
6.4 스프링 부트 데이터 레스트로 REST API 구현하기
6.4.1 준비하기
6.4.2 기본 노출 전략 살펴보기
6.4.3 스프링 부트 데이터 레스트로 REST API 구현하기
6.4.4 @RepositoryRestController를 사용하여 REST API 구현하기
6.4.5 생성, 수정, 삭제 연동 테스트
6.4.6 프로젝션으로 노출 필드 제한하기
6.4.7 각 메서드 권한 제한
6.4.8 이벤트 바인딩
6.4.9 URI 처리
6.4.10 HAL 브라우저 적용하기
6.5 마무리

CHAPTER 7 스프링 부트 배치
7.1 배경지식
7.1.1 배치 처리에 스프링 부트 배치를 써야 하는 이유
7.1.2 스프링 부트 배치 2.0
7.1.3 스프링 부트 배치 주의사항
7.2 스프링 부트 배치 이해하기
7.2.1 Job
7.2.2 Step
7.2.3 JobRepository
7.2.4 JobLauncher
7.2.5 ItemReader
7.2.6 ItemProcessor
7.2.7 ItemWriter
7.3 스프링 부트 휴면회원 배치 설계하기
7.4 스프링 부트 배치 설정하기
7.5 스프링 부트 휴면회원 배치 구현하기
7.5.1 휴면회원 배치 테스트 코드 생성
7.5.2 휴면회원 배치 정보 설정
7.5.3 SQL로 테스트 데이터 주입하기
7.6 스프링 배치 심화학습
7.6.1 다양한 ItemReader 구현 클래스
7.6.2 다양한 ItemWriter 구현 클래스
7.6.3 JobParameter 사용하기
7.6.4 테스트 시에만 H2 데이터베이스를 사용하도록 설정하기
7.6.5 청크 지향 프로세싱
7.6.6 배치의 인터셉터 Listener 설정하기
7.6.7 어노테이션 기반으로 Listener 설정하기
7.6.8 Step의 흐름을 제어하는 Flow
7.7 멀티 스레드로 여러 개의 Step 실행하기
7.7.1 TaskExecutor를 사용해 여러 Step 동작시키기
7.7.2 여러 개의 Flow 실행시키기
7.7.3 파티셔닝을 사용한 병렬 프로그래밍
7.8 마무리

부록 A 코드 다이어트를 위한 롬복 프로젝트
부록 B 자동으로 LiveReload하는 devtools
부록 C 스프링 부트 빌드와 배포
부록 D 커스텀 배너 설정하기
부록 E 페이스북, 구글, 카카오 개발자센터 연동


리뷰

구매자 별점

2.3

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

12명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전