HOME > Detail View

Detail View

스프링 5.0 마스터 : 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지

스프링 5.0 마스터 : 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지 (Loan 3 times)

Material type
단행본
Personal Author
Karanam, Ranga Rao 김완철, 역 권용길, 역
Title Statement
스프링 5.0 마스터 : 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지 / 랑가 라오 카라남 지음 ; 김완철, 권용길 옮김
Publication, Distribution, etc
서울 :   에이콘,   2018  
Physical Medium
586 p. : 삽화 ; 24 cm
Series Statement
Acorn+PACKT technical book
Varied Title
Mastering spring 5.0 : comprehensive guide to becoming an expert in the spring framework
ISBN
9791161751825 9788960772106 (세트)
General Note
색인수록  
000 00000cam c2200205 c 4500
001 000045963603
005 20190416100830
007 ta
008 181206s2018 ulka 001c kor
020 ▼a 9791161751825 ▼g 94000
020 1 ▼a 9788960772106 (세트)
035 ▼a (KERIS)BIB000014912959
040 ▼a 224010 ▼c 224010 ▼d 211021 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.133 ▼2 23
085 ▼a 005.133 ▼2 DDCK
090 ▼a 005.133 ▼b J41 2018z19
100 1 ▼a Karanam, Ranga Rao
245 1 0 ▼a 스프링 5.0 마스터 : ▼b 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지 / ▼d 랑가 라오 카라남 지음 ; ▼e 김완철, ▼e 권용길 옮김
246 3 ▼a 스프링 오점영 마스터
246 1 9 ▼a Mastering spring 5.0 : ▼b comprehensive guide to becoming an expert in the spring framework
260 ▼a 서울 : ▼b 에이콘, ▼c 2018
300 ▼a 586 p. : ▼b 삽화 ; ▼c 24 cm
440 0 0 ▼a Acorn+PACKT technical book
500 ▼a 색인수록
546 ▼a 영어로 된 원저작을 한국어로 번역
700 1 ▼a 김완철, ▼e
700 1 ▼a 권용길, ▼e
900 1 0 ▼a 카라남, 랑가 라오, ▼e

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Sejong Academic Information Center/Science & Technology/ Call Number 005.133 J41 2018z19 Accession No. 151343369 Availability Available Due Date Make a Reservation Service C

Contents information

Book Introduction

IT 관련 특히 웹 서비스 관련 종사자면 자바 개발자가 아니더라도 스프링 프레임워크에 대해 한 번은 들어 봤을 정도로 스프링 프레임워크가 차지하고 있는 포지션은 크다. 특히 자바 개발자 사이에서 스프링 프레임워크의 지지는 절대적이라고 할 수 있다. 이에 걸맞게 최신 트렌드를 반영한 이 책은 스프링 5.0과 이와 관련된 최신 기술에 대한 내용을 적절한 예제를 통해 독자가 이해하기 쉽게 구성돼 있어 스프링을 처음 접하는 초보 개발자도 쉽게 이해할 수 있다.

★ 이 책에서 다루는 내용 ★

- 스프링 프레임워크 5.0의 새로운 기능
- 스프링 부트로 마이크로서비스 구축
- 애플리케이션을 효과적으로 개발하고 모니터하기 위한 스프링 부트의 고급 기능 이해
- 스프링 클라우드를 사용해 클라우드에 애플리케이션 배치 및 관리
- 스프링 데이터 및 스프링 클라우드 데이터 플로우 이해
- 리액티브 프로그래밍의 기초 이해
- 스프링 프레임워크로 애플리케이션을 개발할 때의 모범 사례
- 코틀린을 사용해 새 프로젝트를 만들고 단위 및 통합 테스트를 사용해 몇 가지 기본 서비스 구현

★ 이 책의 대상 독자 ★

스프링의 기초를 알고 있으면서 스프링 부트를 사용해 애플리케이션을 빌드하고 클라우드에 배포하는 방법을 배우고자 하는 자바 개발자를 대상으로 한다.

1장, '스프링 프레임워크 5.0의 발전'에서는 초기 버전에서 스프링 5.0에 이르는 스프링 프레임워크의 발전 과정을 알려준다. 스프링은 초창기에 의존성 주입과 핵심 모듈을 사용해 테스트 가능한 애플리케이션을 개발하는 데 사용됐다. 스프링 부트(Spring Boot), 스프링 클라우드(Spring Cloud), 스프링 클라우드 데이터 플로(Spring Cloud Data Flow) 같은 최근 스프링 프로젝트는 애플리케이션 인프라를 다루고 애플리케이션을 클라우드로 이동시킨다. 다양한 스프링 모듈과 프로젝트에 대한 개요를 살펴보자.
2장, '의존성 주입'에서는 의존성 주입에 대해 자세히 설명한다. 스프링에서 사용할 수 있는 다양한 종류의 의존성 주입 방법과 오토와이어링이 어떻게 삶을 편리하게 하는지 살펴볼 것이다. 단위 테스트에 대해서도 간략하게 살펴본다.
3장, '스프링 MVC 웹 애플리케이션 구축'에서는 스프링 MVC를 사용해 웹 애플리케이션을 빌드하는 방법을 간략히 설명한다.
4장, '마이크로서비스 및 클라우드-네이티브 애플리케이션으로의 진화'에서는 지난 10년간 애플리케이션 아키텍처의 진화를 설명한다. 마이크로서비스와 클라우드-네이티브 애플리케이션이 필요한 이유를 이해하고, 클라우드-네이티브 애플리케이션을 구축하는 데 도움이 되는 다양한 스프링 프로젝트를 간략하게 살펴본다.
5장, '스프링 부트로 마이크로서비스 구축'에서는 스프링 부트가 출시 수준의 스프링 기반 애플리케이션을 만드는 데 방해가 되는 복잡성을 어떻게 제거하는지 설명한다. 스프링 기반 프로젝트를 시작하기 쉽고, 타사 라이브러리와 쉽게 통합할 수 있다. 이 장에서는 스프링 부트로 여행하는 학생들을 데려갈 것이다. 기본 웹 서비스를 구현한 후 캐싱, 예외 처리, HATEOAS 및 국제화 기능을 추가하는 한편, 스프링 프레임워크와는 다른 기능을 사용한다.
6장, '마이크로서비스 확장'에서는 4장, '마이크로서비스 및 클라우드-네이티브 애플리케이션으로의 진화'에 마이크로서비스의 고급 기능을 추가하는 데 중점을 둔다.
7장, '고급 스프링 부트 기능'에서는 스프링 부트의 고급 기능을 살펴본다. 스프링 부트 액추에이터를 사용해 마이크로서비스를 모니터링하는 방법을 배운다. 그런 다음, 마이크로서비스를 클라우드에 배포한다. 또한 스프링 부트가 제공하는 개발자 도구를 사용해 좀 더 효과적으로 개발하는 방법을 배운다.
8장, '스프링 데이터'에서는 스프링 데이터 모듈에 대해 설명한다. 스프링과 JPA 및 빅데이터 기술을 통합하는 간단한 애플리케이션을 개발한다.
9장, '스프링 클라우드'에서는 일반적인 문제, 설정 관리, 서비스 검색, 서킷 브레이커 및 지능형 라우팅이 있는 클라우드 분산 시스템에 대해 설명한다. 이 장에서는 스프링 클라우드로 공통 패턴을 위한 솔루션 개발 방법을 배운다. 이러한 솔루션은 개발자 로컬 시스템뿐 아니라 클라우드에서도 잘 작동한다.
10장, '스프링 클라우드 데이터 플로'에서는 마이크로서비스 기반의 분산 스트리밍 및 배치 데이터 파이프 라인에 대한 패턴과 모범 사례를 제공하는 스프링 클라우드 데이터 플로에 대해 알아본다. 스프링 클라우드 데이터 플로의 기본 사항을 이해하고, 이를 사용해 기본 데이터 플로 사용 사례를 작성한다.
11장, '리액티브 프로그래밍'에서는 비동기 데이터 스트림을 사용한 프로그래밍을 살펴본다. 리액티브 프로그래밍을 이해하고, 스프링 프레임워크에서 제공하는 기능을 간략히 살펴본다.
12장, '스프링 모범 사례'에서는 단위 테스팅, 통합 테스팅, 스프링 설정 유지 등과 관련된 스프링을 사용해 엔터프라이즈 애플리케이션을 개발할 때의 모범 사례를 이해한다.
13장, '스프링에서 코틀린 사용'에서는 코틀린 같이 인기를 얻고 있는 JVM 언어를 소개한다. 이클립스에서 코틀린 프로젝트를 설정하는 방법에 대해 설명한다. 코틀린을 사용해 새로운 스프링 부트 프로젝트를 만들고 단위 및 통합 테스팅과 함께 몇 가지 기본 서비스를 구현한다.


Information Provided By: : Aladin

Author Introduction

랑가 라오 카라남(지은이)

프로그래머, 강사 및 시스템 설계자다. 관심 분야는 클라우드 네이티브 애플리케이션, 마이크로서비스, 진화론적 설계, 고품질 코드, 데브옵스(DevOps), BDD1, TDD2, 리팩토링이다. 컴포넌트 기반의 클라우드 네이티브 애플리케이션을 사용하고 BDD 같은 현대적 개발 관행을 따르며, 지속적 전달(배포), 데브옵스 등 확장성 개발과 관련된 스타트업 컨설팅, 스프링 프레임워크가 개발 중인 엔터프라이즈 자바 애플리케이션에 부여해주는 자유를 좋아한다. 클라우드 네이티브 자바 애플리케이션 개발에 대한 고품질의 강의를 만드는 in28minutes3에서 시작했으며, Udemy4 학생 7만 5,000명, 유튜브 3만 5,000명의 구독자를 갖고 있다. 크리켓 게임을 즐기고 하이킹을 좋아한다. 꿈은 히말라야 산맥에서 1년 동안 하이킹을 하는 것이다.

김완철(옮긴이)

자바 백엔드 엔지니어로 웹/모바일 플랫폼을 개발해왔으며, 현재 소프트웨어 아키텍트로 자바와 Node.js를 사용해 IoT 솔루션을 개발하고 있다. 한국 제이보스 유저 그룹(KJBUG, Korea JBoss User Group) 멤버로 활동하고 있으며, 실시간 빅데이터 분석 및 블록체인에 관심이 많다.

권용길(옮긴이)

2004년 게임 사에서 커머스 서비스 개발을 시작으로 멤버십, 빌링 등과 같은 웹 플랫폼 서비스를 개발했으며, 현재 모바일 플랫폼 서비스 개발하고 있다. 근무 외 시간에는 앱 개발 콘테스트 멘토링, 스타트업 기술 자문 등 다양한 활동에 참여하고 있으며, 경력의 많은 부분을 자바 기반의 스프링과 함께 하고 있다.

Information Provided By: : Aladin

Table of Contents

1장. 스프링 프레임워크 5.0의 발전

__스프링 프레임워크
____EJB 관련 문제점
__스프링 프레임워크가 인기 있는 이유는 무엇일까?
____단순화된 단위 테스트
____복잡한 코드 감소
________스프링 프레임워크는 어떻게 마법을 부릴까?
____아키텍처의 유연성
____변화하는 시대를 선도함
__스프링 모듈
____스프링 코어 컨테이너
____횡단 관심
____웹
____비지니스
____데이터
__스프링 프로젝트
____스프링 부트
____스프링 클라우드
____스프링 데이터
____스프링 배치
____스프링 시큐리티
____스프링 HATEOAS
__스프링 프레임워크 5.0 새로운 기능
____기준선 업그레이드
____JDK 9 런타임 호환성
____스프링 프레임워크 코드에서 JDK 8 기능 사용
____리액티브 프로그래밍 지원
____함수형 웹 프레임워크
____직소를 사용한 자바 모듈성
____코틀린 지원
____삭제된 기능
__스프링 부트 2.0의 새로운 기능
__요약

2장. 의존성 주입

__DI 이해하기
____의존성 이해하기
____스프링 IoC 컨테이너
________빈과 와이어링 정의
________스프링 IoC 컨테이너 생성
________애플리케이션 콘텍스트에 대한 자바 구성
________애플리케이션 콘텍스트의 XML 구성
________스프링 콘텍스트를 사용해 JUnit 작성하기
____모크 단위 테스트
____컨테이너 관리 빈
____DI 유형
________setter 주입
________생성자 주입
________생성자 대 설정자 주입
____스프링 빈 스코프
____자바 대 XML 구성
____@Autowired 어노테이션
________@Primary 어노테이션
________@Qualifier 어노테이션
____기타 중요한 스프링 어노테이션
____콘텍스트 및 DI 탐색
________CDI의 예
__요약

3장. 스프링 MVC 웹 애플리케이션 구축

__자바 웹 애플리케이션 아키텍처
____모델 1 아키텍처
____모델 2 아키텍처
____모델 2 프런트 컨트롤러 아키텍처
__기본 플로
____기존 설정
________스프링 MVC에 대한 의존성 추가하기
________DispatcherServlet을 web.xml에 추가하기
________스프링 콘텍스트 생성하기
____플로 1 - 뷰 없는 간단한 컨트롤러 플로
________스프링 MVC 컨트롤러 생성하기
________웹 애플리케이션 구동
________단위 테스트
____플로 2 - 뷰를 가진 간단한 컨트롤러 플로
________스프링 MVC 컨트롤러
________뷰 생성하기 - JSP
________단위 테스트
____플로 3 - 모델이 있는 뷰로 전환하는 컨트롤러
________스프링 MVC 컨트롤러
________뷰 생성하기
________단위 테스팅
____플로 4 - ModelAndView를 사용해 뷰로 전환하는 컨트롤러
________스프링 MVC 컨트롤러
________뷰 생성하기
________단위 테스팅
____플로 5 - 폼이 있는 뷰로 전환하는 컨트롤러
________명령 또는 폼 백엔드 오브젝트 작성하기
________폼을 표시하는 컨트롤러 메서드
________폼을 가진 뷰 생성하기
______컨트롤러가 폼 제출을 처리하는 메서드를 가져오기
________단위 테스팅
____플로 6 - 이전 플로에 유효성 검증 추가하기
________하이버네이트 벨리데이터 의존성
________빈에 대한 간단한 검증
________커스텀 벨리데이션
________유닛 테스팅
__스프링 MVC의 개요
____중요 기능
____어떻게 작동할까?
__스프링 MVC의 핵심 개념
____RequestMapping
________요청 매핑 예제
________요청 매핑 메서드 - 지원되는 메서드 인수
________RequestMapping 메서드 - 지원되는 리턴 유형
____뷰 리솔루션
________JSP 뷰 리졸버 구성하기
________프리마커 구성
____핸들러 매핑과 인터셉터
________HandlerInterceptor 정의하기
________HandlerInterceptor를 핸들러에 매핑
____모델 속성
____세션 속성
________세션에 속성 추가하기
________세션에서 속성 읽기
________세션에서 속성 제거
____InitBinders
____@ControllerAdvice 어노테이션
__스프링 MVC - 고급 기능
____예외 처리
________컨트롤러 전반의 일반적인 예외 처리
________컨트롤러의 특정 예외 처리
____국제화
________메시지 번들 설정
________SessionLocaleResolver 설정
________CookieLocaleResolver 설정
____스프링 컨트롤러 통합 테스트
____정적 자원 제공
________정적 콘텐츠 노출
________정적 콘텐츠 캐싱
________정적 콘텐츠의 GZip 압축 사용
____스프링 MVC와 부트스트랩의 통합
________메이븐 의존성으로서의 부트스트랩 WebJar
________스프링 MVC 리소스 핸들러로 WebJar 정적 콘텐츠 전달하기 설정
________JSP에서 부트스트랩 리소스 사용하기
__스프링 시큐리티
____스프링 보안 의존성 추가하기
____모든 요청을 인터셉트하도록 필터 설정
____로그아웃
__요약

4장. 마이크로 아키텍처 및 클라우드-네이티브 애플리케이션으로의 진화

__스프링을 이용한 일반적인 웹 애플리케이션 아키텍처
____웹 계층
________웹 애플리케이션 - HTML 뷰 렌더링
________RESTful 서비스
____비즈니스 계층
____데이터 계층
____통합 계층
____횡단 관심
__스프링에 의해 해결된 문제
____느슨한 커플링 및 테스트 가능성
____복잡한 코드
____경량 아키텍처
____유연한 아키텍처
____횡단 관심의 간편한 구현
____디자인 패턴
__애플리케이션 개발 목표
____속도
____안전
________신뢰성
________가용성
________보안
________성능
________높은 복원력
____확정성
__모놀리식 애플리케이션 문제
____긴 릴리스 주기
____확장의 어려움
____새로운 기술 적용
____새로운 방법론 적용
____현대적인 개발 사례 적용
__마이크로서비스 이해
____마이크로서비스는 무엇인가?
____마이크로서비스 아키텍처
____마이크로서비스 특성
________작고 가벼운 마이크로서비스
________메시지 기반 커뮤니케이션과의 상호 운용성
________용량 할당 마이크로서비스
________독립적으로 배포 가능한 유닛
________무상태
________자동화된 빌드 및 릴리스 프로세스
________이벤트-드리븐 아키텍처
________독립된 팀
____마이크로서비스 장점
________출시 시간 단축
________기술 진화
________가용성 및 확장성
________팀 동력
____마이크로서비스 문제
________자동화에 대한 필요성 증가
________서브 시스템의 경계 정의
________가시성 및 모니터링
________결함 허용
________영속적 일관성
________운영 팀에 대한 필요성 증가
__클라우드-네이티브 애플리케이션
____12-팩터 앱
________코드베이스 유지
________의존성
________환경 설정
________백엔드 서비스
________빌드, 릴리스, 실행
________무상태
________포트 바인딩
________동시성
________처분 가능성
________환경 평가
________이벤트 스트림 로그
________구분 없는 어드민 프로세스
__스프링 프로젝트
____스프링 부트
____스프링 클라우드
__요약

5장. 스프링 부트로 마이크로서비스 구축

__스프링 부트는 무엇인가?
____마이크로서비스로 빠르게 프로토타입 구축
____기본 목표
____비기능적인 특징
__스프링 부트 Hello World
____spring-boot-starter-parent 설정
________spring-boot-starter-parent
____필요한 스타터 프로젝트를 사용해 pom.xml 구성
________스타터 프로젝트 이해하기
____spring-boot-maven-plugin 설정
____첫 스프링 부트 구동 클래스 생성
________SpringApplication 클래스
________@SpringBootApplication 어노테이션
____Hello World 애플리케이션 구동
____자동 설정
____스타터 프로젝트
__REST는 무엇인가?
__첫 REST 서비스
____문자열을 반환하는 간단한 메서드
________단위 테스팅
________통합 테스팅
____객체를 반환하는 간단한 REST 메서드
________요청 실행
________단위 테스팅
________통합 테스팅
____경로 변수를 가진 Get 메서드
________요청 실행
________단위 테스팅
________통합 테스팅
__todo 리소스 생성
____메서드, 오퍼레이션, URI 요청
____빈들과 서비스들
____Todo 리스트 검색
________서비스 실행
________단위 테스팅
________통합 테스팅
____특정 Todo의 세부 정보 검색
________서비스 실행
________단위 테스팅
________통합 테스팅
____Todo 추가
________포스트맨
________POST 서비스 실행
________단위 테스팅
________통합 테스트
__스프링 이니셜라이저
____첫 스프링 이니셜라이저 프로젝트 생성
________Pom
________FirstSpringInitializrApplication.java 클래스
________FirstSpringInitializrApplicationTests 클래스
__자동 설정 확인
__요약

6장. 마이크로서비스 확장

__예외 처리
____스프링 부트 기본 예외 처리
________존재하지 않는 리소스
________예외를 발생시키는 리소스
________커스텀 예외 발생시키기
________커스텀 예외 메시지
________응답 상태
__HATEOAS
____응답에 HATEOAS 링크 정보 보내기
________스프링 부트 스타터 HATEOAS
__벨리데이션
____컨트롤러 메서드 벨리데이션 활성화
____빈 벨리데이션 정의
____단위 테스팅 벨리데이션
__REST 서비스 문서화
____Swagger 명세서 생성
________Swagger UI
________어노테이션을 사용한 커스텀 Swagger 문서
__스프링 시큐리티로 REST 서비스 보호
____스프링 시큐리티 스타터 추가
____기본 인증
________통합 테스팅
________단위 테스팅
____OAuth 2 인증
________하이-레벨 플로
________서비스를 OAuth 2로 인증 구현
__국제화
__캐싱
____Spring-boot-starter-cache
____캐싱 활성화
____데이터 캐싱
____JSR-107 캐싱 어노테이션
________자동 감지 순서
__요약

7장. 고급 스프링 부트 기능

__외형화된 구성
____application.properties를 통한 프레임워크 커스텀
________로깅
________임베디드 서버 구성
________스프링 MVC
________스프링 스타터 시큐리티
________데이터 소스, JDBC와 JPA
________기타 구성 옵션
____application.properties의 커스텀 속성
________구성 등록 정보 - 타입세이프(type-safe) 구성 관리
____프로파일
________프로파일-기반 빈 구성
____애플리케이션 구성값에 대한 기타 옵션
____YAML 구성
__임베디드 서버
____제티 및 언더토우 전환
____WAR 파일 만들기
__개발자 도구
____실시간 리로드
__스프링 부트 엑추에이터
____HAL 브라우저
____구성 속성
____환경 세부 정보
____상태
____매핑
____빈즈
____측정 항목
____자동 구성
____디버깅
__클라우드에 애플리케이션 배포
____클라우드 파운드리
__요약

8장. 스프링 데이터

__백그라운드 - 데이터 저장소
__스프링 데이터
____스프링 데이터 커먼즈
________리포지토리
________CrudRepository 인터페이스
________PagingAndSortingRepository 인터페이스
____스프링 데이터 JPA
________스프링 데이터 JPA 예제
________엔티티
________간단한 저장소
________CrudRepository 인터페이스
________PagingAndSortingRepository 인터페이스
________쿼리 메서드
________쿼리들
__스프링 데이터 Rest
____GET 메서드
____POST 메서드
____검색 리소스
__빅데이터
____몽고DB
________단위 테스트
__요약

9장. 스프링 클라우드

__스프링 클라우드 소개
____스프링 클라우드 넷플릭스
__데모 마이크로서비스 설정
____마이크로서비스 A
____서비스 소비자
________포트
__중앙 집중식 마이크로서비스 구성
____문제 기술
____해결책
____옵션
____스프링 클라우드 컨피그
________스프링 클라우드 컨피그 서버 구현
__스프링 클라우드 버스
____스프링 클라우드 버스의 필요성
____스프링 클라우드 버스를 사용해 구성 변경 전파
____구현
__선언적 REST 클라이언트 - 페인
__로드 균형 조정
____립본
________구현
__네임 서버
____마이크로서비스 URL 하드 코딩의 한계
__네임 서버 작동
____옵션
____구현
________유레카 서버 세팅
________유레카에 마이크로서비스 등록
________유레카와 서비스 소비자 마이크로서비스 연결
__API 게이트웨이
____주울로 클라이언트 측 로드 밸런싱 구현하기
________새로운 주울 API 게이트웨이 서버 설정
________주울 API 게이트웨이를 사용하도록 서비스 소비자 구성
__분산 추적
____분산 추적 옵션
____스프링 클라우드 슬루스와 집킨 구현하기
________스프링 클라우드 슬루스와 마이크로서비스 컴포넌트 통합
________집킨 분산 추적 서버 설정
________집킨과 마이크로서비스 구성 요소 통합
__히스트릭스 - 내결함성
____구현
__요약

10장. 스프링 클라우드 데이터 플로

__메시지 기반 비동기 통신
____비동기 통신의 복잡성
__비동기 메시지용 스프링 프로젝트
____스프링 통합
____스프링 클라우드 스트림
____스프링 클라우드 데이터 플로
__스프링 클라우드 스트림
____스프링 클라우드 스트림 아키텍처
____이벤트 처리 - 주식 거래 예제
________주식 거래 예제 위한 모델
________소스 애플리케이션
________프로세서
________싱크
__스프링 클라우드 데이터 플로
____높은 수준의 아키텍처
____스프링 클라우드 데이터 플로 구현하기
________스프링 클라우드 데이터 플로 서버 설정하기
________데이터 플로 셸 프로젝트 설정
________앱 구성
________스트림 구성
________스트림 배포
________로그 메시지 - 메시지 팩토리에 대한 연결 설정
________로그 메시지 - 이벤트 플로
____스프링 클라우드 데이터 플로 REST API
__스프링 클라우드 테스크
__요약

11장. 리액티브 프로그래밍

____리액티브 선언
____리액티브 시스템의 특성
__반응적 사용 사례 - 주가 페이지
____전통적인 방식
____리액티브 방식
____전통적인 방식과 리액티브 방식의 비교
__자바의 리액티브 프로그래밍
____리액티브 스트림
____리액터
________모노
________플럭스
____스프링 웹 리액티브
________스프링 이니셜라이저를 사용해 프로젝트 만들기
________리액티브 컨트롤러 만들기
________HTML 보기 만들기
________SpringReactiveExampleApplication 실행
____리액티브 데이터베이스
________스프링 부트 리액티브 몽고DB 스타터 통합하기
________모델 오브젝트 생성 - Stock 도큐멘트
________ReactiveCrudRepository 만들기
________명령-행 러너를 사용해 주식 데이터 초기화하기
________레스트 컨트롤러에서 리액티브 함수 만들기
________이벤트 스트림에 가입하기 위해 뷰 업데이트하기
________SpringReactiveExampleApplication 실행 중
__요약

12장. 스프링 모범 사례

__메이븐 표준 디렉터리 레이아웃
__계층화된 아키텍처
____권장 사례
________중요한 레이어에 대한 API와 impl 분리
__예외 처리
____예외 처리에 대한 스프링의 접근 방식
____권장 접근법
__스프링 구성 간결하게 유지
____컴포넌트 스캔에서 basePackageClasses 특성 사용
____스키마 참조에서 버전 번호를 사용하지 않음
____필수 의존성에 대한 setter 인젝션보다 생성자 인젝션을 선호한다
__스프링 프로젝트의 의존성 버전 관리하기
__단위 테스트
____비즈니스 레이어
____웹 레이어
____데이터 레이어
____기타 모범 사례
__통합 테스트
____스프링 세션
____예제
________스프링 세션에 대한 의존성 추가하기
________HttpSession을 스프링 세션으로 대체하기 위한 필터 설정하기
________AbstractHttpSessionApplicationInitializer를 확장해 톰캣에 대한 필터링 사용
__캐싱
____스프링 부트 스타터 캐시 의존성 추가하기
____캐싱 어노테이션 추가하기
__로깅
____로그백
____Log4j2
____프레임워크 독립 구성
__요약

13장. 스프링에서 코틀린 개발

__코틀린
__코틀린 대 자바
____변수 및 형식 추론
____변수 및 불변성
____타입 시스템
____함수들
____배열
____컬렉션
____확인되지 않은 예외 처리
____데이터 클래스
__이클립스에서 코틀린 프로젝트 만들기
____코틀린 플러그인
____코틀린 프로젝트 만들기
____코틀린 클래스 만들기
____코틀린 클래스 실행
__코틀린을 사용해 스프링 부트 프로젝트 만들기
____의존성 및 플러그인
____스프링 부트 애플리케이션 클래스
____스프링 부트 애플리케이션 테스트 클래스
__코틀린을 사용해 REST 서비스 구현하기
____문자열을 리턴하는 간단한 메서드
________단위 테스트
________통합 테스트
____객체를 반환하는 간단한 REST 메서드
________요청 실행
________단위 테스트
________통합 테스트
____경로 변수로 메서드 가져오기
________요청 실행
________단위 테스트
________통합 테스트
__요약


Information Provided By: : Aladin

New Arrivals Books in Related Fields

Ramamurthy, Bina (2021)
윤관식 (2020)