본문 바로가기

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


스프링 인 액션(제5판) 상세페이지

컴퓨터/IT 컴퓨터/앱 활용

스프링 인 액션(제5판)

스프링 5의 강력한 기능과 생산성을 활용한 웹 애플리케이션 개발

구매종이책 정가35,000
전자책 정가24,500(30%)
판매가24,500
스프링 인 액션(제5판)

책 소개

<스프링 인 액션(제5판)> 리액티브 프로그래밍 지원을 강화한 스프링 5의 모든 것을 탐구한다!

『스프링 인 액션』에서는 스프링 5와 스프링 부트 2를 사용해서 애플리케이션을 개발하는 데 필요한 여러 핵심 기능을 알려준다. 스프링 5에서는 특히 새로운 리액티브 웹 프레임워크인 WebFlux를 중점적으로 다루고 있다. 개발자들은 더 쉽고 확장성이 좋은 웹 애플리케이션을 개발할 수 있다. 이번에 출간된 제5판에서는 스프링 최신 버전의 모든 것을 다루고 있으므로 개발자들이 스프링의 새로운 진면목을 파악하는 데 도움이 될 것이다.


출판사 서평

한층 더 진화한 스프링 5로 웹 애플리케이션 개발에 날개를 달다!
스프링 WebFlux 등 리액티브 프로그래밍 지원을 강화한 스프링 5의 모든 것을 탐구한다!

스프링 프레임워크는 자바 개발자들을 더 편하게 해줍니다. 스프링 5의 새로운 기능들은 마이크로서비스와 리액티브 애플리케이션 개발과 같은 현대적 애플리케이션 설계 시에 생산성을 높여 줍니다. 이제는 스프링 부트가 완전히 통합되어 복잡한 프로젝트일지라도 최소한의 구성 코드로 시작할 수 있습니다. 또한, 한층 업그레이드된 WebFlux 프레임워크는 기본적으로 리액티브 애플리케이션을 지원합니다.

『스프링 인 액션(제5판)』은 스프링의 핵심 기능을 명쾌하게 알려 줍니다. 이 책을 통해 여러분은 데이터베이스가 지원되는 웹 애플리케이션을 점진적으로 만들어 볼 것입니다. 그러면서 리액티브 프로그래밍, 마이크로서비스, 서비스 발견, Restful API, 애플리케이션 배포, 모범 사례를 배우게 될 것입니다. 또한, 원서의 오류를 모두 바로잡고 부족한 부분을 보강하는 데 심혈을 기울였습니다. 스프링 입문자와 스프링 5로 레벨업하려는 기존 스프링 사용자 모두에게 이 책은 안성맞춤입니다!

이 책의 주요 내용
■ 리액티브 애플리케이션 개발하기
■ 웹 애플리케이션과 RESTful 웹 서비스를 위한 스프링 MVC 사용
■ 스프링 보안을 사용한 애플리케이션 보안 처리
■ 스프링 5의 핵심 파악



저자 소개

저 : 크레이그 월즈 (Craig Walls)
피보탈(Pivotal)의 메인 엔지니어다. 스프링 프레임워크의 열성적인 후원자로 로컬 사용자 그룹 및 콘퍼런스에서 연설 등의 활동과 함께 스프링 관련 집필에도 힘을 쏟고 있다. 앞으로 디즈니월드나 디즈니랜드 여행을 계획하고 있으며, 평소에는 아내와 두 딸, 두 마리의 새, 세 마리의 개와 함께 시간을 보내고 있다.

역 : 심재철
현재 프리랜서로, 데이터베이스/모바일 시스템 컨설팅과 강의를 하고 있다. 또한, 20년 넘게 데이터베이스와 객체지향 시스템 설계 및 개발 프로젝트와 건설/금융 분야 애플리케이션 개발 등에 참여했다. 새로운 테크놀로지와 다양한 프로그래밍 언어를 사용해서 실무에 활용하고 가르치는 것을 좋아한다. 저서로는 『핵심만 골라 배우는 코틀린 프로그래밍』이 있으며, 번역서로는 『카프카 핵심 가이드』, 『핵심만 골라 배우는 안드로이드 스튜디오 3 & 프로그래밍』, 『실무에 적용하는 안드로이드 프로그래밍(제2판)』, 『Learn Android Studio』, 『SQLite 마스터북(제2판)』, 『프로 오브젝티브-C 디자인 패턴』, 『세븐 데이터베이스: 만들면서 파악하는 NoSQL』, 『UML 사용자 지침서』, 『Thinking in JAVA 4/e』, 『이펙티브 자바』 등이 있다.

목차

PART 1 스프링 기초
CHAPTER 1 스프링 시작하기
1.1 스프링이란?
1.2 스프링 애플리케이션 초기 설정하기
1.2.1 STS를 사용해서 스프링 프로젝트 초기 설정하기
1.2.2 스프링 프로젝트 구조 살펴보기
1.3 스프링 애플리케이션 작성하기
1.3.1 웹 요청 처리하기
1.3.2 뷰 정의하기
1.3.3 컨트롤러 테스트하기
1.3.4 애플리케이션 빌드하고 실행하기
1.3.5 스프링 부트 DevTools 알아보기
1.3.6 리뷰하기
1.4 스프링 살펴보기
1.4.1 핵심 스프링 프레임워크
1.4.2 스프링 부트
1.4.3 스프링 데이터
1.4.4 스프링 시큐리티
1.4.5 스프링 통합과 배치
1.4.6 스프링 클라우드
요약

CHAPTER 2 웹 애플리케이션 개발하기
2.1 정보 보여주기
2.1.1 도메인 설정하기
2.1.2 컨트롤러 클래스 생성하기
2.1.3 뷰 디자인하기
2.2 폼 제출 처리하기
2.3 폼 입력 유효성 검사하기
2.3.1 유효성 검사 규칙 선언하기
2.3.2 폼과 바인딩될 때 유효성 검사 수행하기
2.3.3 유효성 검사 에러 보여주기
2.4 뷰 컨트롤러로 작업하기
2.5 뷰 템플릿 라이브러리 선택하기
2.5.1 템플릿 캐싱
요약

CHAPTER 3 데이터로 작업하기
3.1 JDBC를 사용해서 데이터 읽고 쓰기
3.1.1 퍼시스턴스를 고려한 도메인 객체 수정하기
3.1.2 JdbcTemplate 사용하기
3.1.3 스키마 정의하고 데이터 추가하기
3.1.4 타코와 주문 데이터 추가하기
3.2 스프링 데이터 JPA를 사용해서 데이터 저장하고 사용하기
3.2.1 스프링 데이터 JPA를 프로젝트에 추가하기
3.2.2 도메인 객체에 애노테이션 추가하기
3.2.3 JPA 리퍼지터리 선언하기
3.2.4 JPA 리퍼지터리 커스터마이징하기
요약

CHAPTER 4 스프링 시큐리티
4.1 스프링 시큐리티 활성화하기
4.2 스프링 시큐리티 구성하기
4.2.1 인메모리 사용자 스토어
4.2.2 JDBC 기반의 사용자 스토어
4.2.3 LDAP 기반 사용자 스토어
4.2.4 사용자 인증의 커스터마이징
4.3 웹 요청 보안 처리하기
4.3.1 웹 요청 보안 처리하기
4.3.2 커스텀 로그인 페이지 생성하기
4.3.3 로그아웃하기
4.3.4 CSRF 공격 방어하기
4.4 사용자 인지하기
4.5 각 폼에 로그아웃 버튼 추가하고 사용자 정보 보여주기
요약

CHAPTER 5 구성 속성 사용하기
5.1 자동-구성 세부 조정하기
5.1.1 스프링 환경 추상화 이해하기
5.1.2 데이터 소스 구성하기
5.1.3 내장 서버 구성하기
5.1.4 로깅 구성하기
5.1.5 다른 속성의 값 가져오기
5.2 우리의 구성 속성 생성하기
5.2.1 구성 속성 홀더 정의하기
5.2.2 구성 속성 메타데이터 선언하기
5.3 프로파일 사용해서 구성하기
5.3.1 프로파일 특정 속성 정의하기
5.3.2 프로파일 활성화하기
5.3.3 프로파일을 사용해서 조건별로 빈 생성하기
요약

PART 2 통합된 스프링
CHAPTER 6 REST 서비스 생성하기
6.1 REST 컨트롤러 작성하기
6.1.1 서버에서 데이터 가져오기
6.1.2 서버에 데이터 전송하기
6.1.3 서버의 데이터 변경하기
6.1.4 서버에서 데이터 삭제하기
6.2 하이퍼미디어 사용하기
6.2.1 하이퍼링크 추가하기
6.2.2 리소스 어셈블러 생성하기
6.2.3 embedded 관계 이름 짓기
6.3 데이터 기반 서비스 활성화하기
6.3.1 리소스 경로와 관계 이름 조정하기
6.3.2 페이징과 정렬
6.3.3 커스텀 엔드포인트 추가하기
6.3.4 커스텀 하이퍼링크를 스프링 데이터 엔드포인트에 추가하기
6.4 앵귤러 IDE 이클립스 플러그인 설치와 프로젝트 빌드 및 실행하기
6.4.1 앵귤러 IDE 이클립스 플러그인 설치하기
6.4.2 타코 클라우드 애플리케이션 빌드하고 실행하기
요약

CHAPTER 7 REST 서비스 사용하기
7.1 RestTemplate으로 REST 엔드포인트 사용하기
7.1.1 리소스 가져오기(GET)
7.1.2 리소스 쓰기(PUT)
7.1.3 리소스 삭제하기(DELETE)
7.1.4 리소스 데이터 추가하기(POST)
7.2 Traverson으로 REST API 사용하기
7.3 REST API 클라이언트가 추가된 타코 클라우드 애플리케이션 빌드 및 실행하기
요약

CHAPTER 8 비동기 메시지 전송하기
8.1 JMS로 메시지 전송하기
8.1.1 JMS 설정하기
8.1.2 JmsTemplate을 사용해서 메시지 전송하기
8.1.3 JMS 메시지 수신하기
8.2 RabbitMQ와 AMQP 사용하기
8.2.1 RabbitMQ를 스프링에 추가하기
8.2.2 RabbitTemplate을 사용해서 메시지 전송하기
8.2.3 RabbitMQ로부터 메시지 수신하기
8.3 카프카 사용하기
8.3.1 카프카 사용을 위해 스프링 설정하기
8.3.2 KafkaTemplate을 사용해서 메시지 전송하기
8.3.3 카프카 리스너 작성하기
8.4 비동기 메시지 전송과 수신 기능이 추가된 타코 클라우드 애플리케이션 빌드 및 실행하기
요약

CHAPTER 9 스프링 통합하기
9.1 간단한 통합 플로우 선언하기
9.1.1 XML을 사용해서 통합 플로우 정의하기
9.1.2 Java로 통합 플로우 구성하기
9.1.3 스프링 통합의 DSL 구성 사용하기
9.2 스프링 통합의 컴포넌트 살펴보기
9.2.1 메시지 채널
9.2.2 필터
9.2.3 변환기
9.2.4 라우터
9.2.5 분배기
9.2.6 서비스 액티베이터
9.2.7 게이트웨이
9.2.8 채널 어댑터
9.2.9 엔드포인트 모듈
9.3 이메일 통합 플로우 생성하기
9.4 타코 클라우드 애플리케이션 빌드 및 실행하기
요약

PART 3 리액티브 스프링
CHAPTER 10 리액터 개요
10.1 리액티브 프로그래밍 이해하기
10.1.1 리액티브 스트림 정의하기
10.2 리액터 시작하기
10.2.1 리액티브 플로우의 다이어그램
10.2.2 리액터 의존성 추가하기
10.3 리액티브 오퍼레이션 적용하기
10.3.1 리액티브 타입 생성하기
10.3.2 리액티브 타입 조합하기
10.3.3 리액티브 스트림의 변환과 필터링
10.3.4 리액티브 타입에 로직 오퍼레이션 수행하기
10.4 리액티브 오퍼레이션 테스트 프로젝트 빌드 및 실행하기
요약

CHAPTER 11 리액티브 API 개발하기
11.1 스프링 WebFlux 사용하기
11.1.1 스프링 WebFlux 개요
11.1.2 리액티브 컨트롤러 작성하기
11.2 함수형 요청 핸들러 정의하기
11.3 리액티브 컨트롤러 테스트하기
11.3.1 GET 요청 테스트하기
11.3.2 POST 요청 테스트하기
11.3.3 실행 중인 서버로 테스트하기
11.4 REST API를 리액티브하게 사용하기
11.4.1 리소스 얻기(GET)
11.4.2 리소스 전송하기
11.4.3 리소스 삭제하기
11.4.4 에러 처리하기
11.4.5 요청 교환하기
11.5 리액티브 웹 API 보안
11.5.1 리액티브 웹 보안 구성하기
11.5.2 리액티브 사용자 명세 서비스 구성하기
요약

CHAPTER 12 리액티브 데이터 퍼시스턴스
12.1 스프링 데이터의 리액티브 개념 이해하기
12.1.1 스프링 데이터 리액티브 개요
12.1.2 리액티브와 리액티브가 아닌 타입 간의 변환
12.1.3 리액티브 리퍼지터리 개발하기
12.2 리액티브 카산드라 리퍼지터리 사용하기
12.2.1 스프링 데이터 카산드라 활성화하기
12.2.2 카산드라 데이터 모델링 이해하기
12.2.3 카산드라 퍼시스턴스의 도메인 타입 매핑
12.2.4 리액티브 카산드라 리퍼지터리 작성하기
12.3 리액티브 몽고DB 리퍼지터리 작성하기
12.3.1 스프링 데이터 몽고DB 활성화하기
12.3.2 도메인 타입을 문서로 매핑하기
12.3.3 리액티브 몽고DB 리퍼지터리 인터페이스 작성하기
요약

PART 4 클라우드 네이티브 스프링
CHAPTER 13 서비스 탐구하기
13.1 마이크로서비스 이해하기
13.2 서비스 레지스트리 설정하기
13.2.1 유레카 구성하기
13.2.2 유레카 확장하기
13.3 서비스 등록하고 찾기
13.3.1 유레카 클라이언트 속성 구성하기
13.3.2 서비스 사용하기
13.4 마이크로 서비스 관련 프로젝트의 빌드 및 실행하기
요약

CHAPTER 14 클라우드 구성 관리
14.1 구성 공유하기
14.2 구성 서버 실행하기
14.2.1 구성 서버 활성화하기
14.2.2 Git 리퍼지터리에 구성 속성 저장하기
14.3 공유되는 구성 데이터 사용하기
14.4 애플리케이션이나 프로파일에 특정된 속성 제공하기
14.4.1 애플리케이션에 특정된 속성 제공하기
14.4.2 프로파일로부터 속성 제공하기
14.5 구성 속성들의 보안 유지하기
14.5.1 Git 백엔드의 속성들 암호화하기
14.5.2 Vault에 보안 속성 저장하기
14.6 실시간으로 구성 속성 리프레시하기
14.6.1 구성 속성을 수동으로 리프레시하기
14.6.2 구성 속성을 자동으로 리프레시하기
14.7 구성 서버와 구성 클라이언트 프로젝트의 빌드 및 실행하기
요약

CHAPTER 15 실패와 지연 처리하기
15.1 서킷 브레이커 이해하기
15.2 서킷 브레이커 선언하기
15.2.1 지연 시간 줄이기
15.2.2 서킷 브레이커 한계값 관리하기
15.3 실패 모니터링하기
15.3.1 Hystrix 대시보드 개요
15.3.2 Hystrix 스레드 풀 이해하기
15.4 다수의 Hystrix 스트림 종합하기
15.5 Hystrix와 Turbine을 사용한 식자재 클라이언트 서비스 빌드 및 실행하기
요약

PART 5 스프링 배포
CHAPTER 16 스프링 부트 액추에이터 사용하기
16.1 액추에이터 개요
16.1.1 액추에이터의 기본 경로 구성하기
16.1.2 액추에이터 엔드포인트의 활성화와 비활성화
16.2 액추에이터 엔드포인트 소비하기
16.2.1 애플리케이션 기본 정보 가져오기
16.2.2 구성 상세 정보 보기
16.2.3 애플리케이션 활동 지켜보기
16.2.4 런타임 메트릭 활용하기
16.3 액추에이터 커스터마이징
16.3.1 /info 엔드포인트에 정보 제공하기
16.3.2 커스텀 건강 지표 정의하기
16.3.3 커스텀 메트릭 등록하기
16.3.4 커스텀 엔드포인트 생성하기
16.4 액추에이터 보안 처리하기
16.5 액추에이터 엔드포인트와 보안을 사용한 타코 서비스 빌드 및 실행하기
요약

CHAPTER 17 스프링 관리하기
17.1 스프링 부트 Admin 사용하기
17.1.1 Admin 서버 생성하기
17.1.2 Admin 클라이언트 등록하기
17.2 Admin 서버 살펴보기
17.2.1 애플리케이션의 건강 상태 정보와 일반 정보 보기
17.2.2 핵심 메트릭 살펴보기
17.2.3 환경 속성 살펴보기
17.2.4 로깅 레벨을 보거나 설정하기
17.2.5 스레드 모니터링
17.2.6 HTTP 요청 추적하기
17.3 Admin 서버의 보안
17.3.1 Admin 서버에 로그인 활성화하기
17.3.2 액추에이터로 인증하기
17.4 Admin 서버 서비스 빌드 및 실행하기
요약

CHAPTER 18 JMX로 스프링 모니터링하기
18.1 액추에이터 MBeans 사용하기
18.2 우리의 MBeans 생성하기
18.3 알림 전송하기
18.4 TacoCounter MBeans 빌드 및 사용하기
요약

CHAPTER 19 스프링 배포하기
19.1 배포 옵션
19.2 WAR 파일 빌드하고 배포하기
19.3 클라우드 파운드리에 JAR 파일 푸시하기
19.4 도커 컨테이너에서 스프링 부트 실행하기
요약

APPENDIX A 스프링 부트 프로젝트 생성하기
A.1 STS를 사용해서 프로젝트 생성하기
A.2 IntelliJ IDEA 설치 및 프로젝트 생성하기
A.2.1 윈도우 시스템에서 IntelliJ IDEA 설치하기
A.2.2 맥OS에서 IntelliJ IDEA 설치하기
A.2.3 리눅스에서 IntelliJ IDEA 설치하기
A.2.4 IntelliJ IDEA 프로젝트 생성하기
A.3 NetBeans 설치 및 프로젝트 생성하기
A.4 start.spring.io에 직접 접속하여 프로젝트 생성하기
A.5 명령행에서 프로젝트 생성하기
A.5.1 curl과 Initializr API
A.5.2 스프링 부트 명령행 인터페이스 사용하기
A.6 메타-프레임워크를 사용해서 스프링 애플리케이션 생성하기
A.7 프로젝트 빌드하고 실행하기
A.8 curl 설치하기
찾아보기


리뷰

구매자 별점

5.0

점수비율

  • 5
  • 4
  • 3
  • 2
  • 1

1명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

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

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

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

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



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

spinner
모바일 버전