HOME > 상세정보

상세정보

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

자료유형
단행본
개인저자
Karanam, Ranga Rao 송주경, 역
서명 / 저자사항
스프링 5 마스터 : 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지 / 랑가 라오 카라남 지음 ; 송주경 옮김
판사항
2nd ed.
발행사항
서울 : 에이콘, 2020
형태사항
696 p. : 삽화 ; 24 cm
총서사항
에이콘 프로그래밍 언어 시리즈
원표제
Mastering Spring 5.0 : an effective guide to build enterprise applications using Java Spring and Spring Boot framework (2nd ed.)
ISBN
9791161754406
일반주기
색인수록
000 00000cam c2200205 c 4500
001 000046059298
005 20201229142600
007 ta
008 201207s2020 ulka 001c kor
020 ▼a 9791161754406 ▼g 93000
035 ▼a (KERIS)BIB000015685245
040 ▼a 211029 ▼c 211029 ▼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 2020
100 1 ▼a Karanam, Ranga Rao
245 1 0 ▼a 스프링 5 마스터 : ▼b 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지 / ▼d 랑가 라오 카라남 지음 ; ▼e 송주경 옮김
246 1 9 ▼a Mastering Spring 5.0 : ▼b an effective guide to build enterprise applications using Java Spring and Spring Boot framework ▼g (2nd ed.)
246 3 ▼a 스프린 오 마스터
250 ▼a 2nd ed.
260 ▼a 서울 : ▼b 에이콘, ▼c 2020
300 ▼a 696 p. : ▼b 삽화 ; ▼c 24 cm
490 1 0 ▼a 에이콘 프로그래밍 언어 시리즈
500 ▼a 색인수록
700 1 ▼a 송주경, ▼e
830 0 ▼a 에이콘 프로그래밍 언어 시리즈
900 1 0 ▼a 카라남, 랑가 라오, ▼e

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 세종학술정보원/과학기술실/ 청구기호 005.133 2020 등록번호 151352084 도서상태 대출가능 반납예정일 예약 서비스 C

컨텐츠정보

책소개

스프링은 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크로 가장 핵심적인 기술 중 하나다. 이 책에서는 스프링의 개념과 스프링 프로젝트의 가장 중요한 두 가지인 스프링 프레임워크, 스프링 부트를 살펴보고, 마이크로서비스, 리액티브, 코틀린까지 다룬다. 또한 스프링과 통합되는 다른 기술들과 여러 가지 응용에 관한 전반적인 지식도 다루고 있다. 대중적이고 기본적인 소스코드로 쉽게 따라 하며 학습할 수 있도록 구성해 이해를 돕는다.

★ 이 책에서 다루는 내용 ★

■ AOP, 트랜잭션 관리, 작업 스케줄링 및 스크립팅과 같은 스프링 프레임워크 5.1 기능 탐색
■ 스프링 및 스프링 부트로 REST API 및 마이크로서비스 구축
■ 스프링 시큐리티를 사용해 안전한 REST API 개발
■ 최초의 풀스택 리액트 애플리케이션 구축
■ 스프링 및 스프링 부트로 효율적인 단위 테스트 작성
■ 스프링 부트가 제공하는 애플리케이션 개발 및 모니터링을 위한 고급 기능 이해
■ 스프링 클라우드를 사용해 애플리케이션을 클라우드에 배포 및 관리

★ 이 책의 대상 독자 ★

스프링 프레임워크에 기본 지식이 있는 숙련된 자바 개발자를 대상으로 한다. 스프링 프레임워크, 스프링 부트, 스프링 클라우드, 스프링 데이터, 스프링 리액티브, 스프링 시큐리티, 스프링 테스트와 같은 다양한 스프링 프로젝트를 자세히 설명한다. 스프링 프레임워크를 사용해 훌륭한 REST API, 마이크로서비스, 풀스택 애플리케이션 및 클라우드 네이티브 애플리케이션을 개발하고 단위 테스트한다.

★ 이 책의 구성 ★

1장, '스프링 환경 - 프레임워크, 모듈 및 프로젝트'에서는 초기 버전에서 스프링 5.1에 이르는 스프링 프레임워크의 발전 과정을 알려준다. 스프링은 초창기에 의존 관계 주입(dependency injection)과 핵심 모듈을 사용해 테스트 가능한 애플리케이션을 개발하는 데 사용됐다. 스프링 부트, 스프링 클라우드 및 스프링 클라우드 데이터 플로우와 같은 최신 스프링 프로젝트는 애플리케이션 인프라를 다루고 애플리케이션을 클라우드로 이동시킨다. 다양한 스프링 모듈과 프로젝트의 개요를 살펴보자.
2장, '의존 관계 주입 및 단위 테스트'에서는 의존 관계 주입을 자세히 살펴본다. 스프링에서 사용할 수 있는 다양한 종류의 의존 관계 주입 방법과 오토와이어링이 삶에 미친 영향을 알아본다. 단위 테스트도 간략히 살펴본다.
3장, '스프링 MVC로 웹 애플리케이션 구축하기'에서는 가장 인기 있는 자바 웹 프레임워크인 스프링 MVC를 사용해 웹 애플리케이션을 구축하는 방법을 설명한다. 스프링 MVC는 깔끔하며 느슨하게 결합된 아키텍처로 컨트롤러, 핸들러 매핑, 뷰 리졸버 및 POJO 커멘드빈의 기능을 명확하게 정의한다. 스프링 MVC는 의존 관계 주입 및 오토와이어링과 같은 모든 핵심 스프링 기능을 이용해 간단하게 만들 수 있고, 서블릿 기반 웹 애플리케이션을 생성한다.
4장, '스프링 부트 시작하기'에서는 스프링 부트를 소개하고 프로덕션 수준의 스프링 기반 애플리케이션을 쉽게 개발하는 방법을 설명한다. 스프링 부트의 기본 사항인 스프링 이니셜라이저, 자동 구성 및 스타터 프로젝트를 배운다. 스프링 부트 액추에이터로 애플리케이션을 모니터링하고 생산적인 개발자가 되기 위해 스프링 부트 DevTools를 사용한다.
5장. '스프링 프레임워크 심화'에서는 스프링 AOP로 크로스 컷팅 문제를 구현하는 방법을 배운다. 그루비(Groovy) 및 자바스크립트(JSR 223 API)를 사용해 작업을 스케줄링하고 동적 스크립트를 작성하는 방법을 학습한다.
6장, '스프링 부트로 REST API 구축하기'에서는 스프링 부트로 훌륭한 REST API를 구축하는 데 집중한다. 기본 REST API를 구현한 다음, 스프링 및 스프링 부트 프레임워크와 다른 기능을 사용하면서 캐싱, 예외 처리, HATEOAS 및 국제화 기능을 추가해본다.
7장, '스프링 부트로 REST API 단위 테스트하기'에서는 스프링 부트로 개발된 REST API에 대한 훌륭한 단위 테스트 및 통합 테스트 작성을 살펴본다. 스프링 MockMVC 및 스프링 부트 테스트를 사용해 전체 스프링 컨텍스트를 시작하는 모의 테스트 및 통합 테스트로 단위 테스트를 작성하는 방법을 배운다.
8장, '스프링 시큐리티를 활용한 시큐리티 REST API'에서는 인증 및 권한 부여와 같은 가장 중요한 REST API 기능을 살펴본다. 스프링 시큐리티는 자바 세계에서 REST API를 보호하기 위해 선택하는 프레임워크다. 특히 스프링 및 스프링 부트로 빌드된 애플리케이션에 적합하다. 이어서 스프링 시큐리티를 스프링 부트 REST API 프로젝트에 통합하는 방법을 이해한다. 스프링 시큐리티의 핵심 구성요소인 필터, 인증 관리자, 공급자 및 액세스 의사 결정 관리자도 배운다. 또한 기본 인증, OAuth 및 스프링 시큐리티 OAuth와 함께 JWT 사용법을 설명한다.
9장, '리액트 및 스프링 부트가 포함된 풀스택 앱'에서는 풀스택 애플리케이션을 설명한다. 널리 사용되는 프론트 엔드 프레임워크 중 하나인 리액트와 함께 간단한 프론트 엔드 애플리케이션을 생성하고 스프링 부트 백엔드와 통합한다. 시큐리티를 포함한 풀스택 개발을 수행할 때 발생할 수 있는 다양한 문제를 설명한다.
10장, '스프링 데이터로 데이터 관리하기'에서는 스프링 데이터 모듈을 설명한다. 스프링 데이터의 목표는 다양한 데이터 리포지토리와 관계형 또는 기타 방식으로 대화하는 일반적인 접근 방식을 도입하는 것이다. 스프링과 JPA와 빅데이터 기술을 통합하는 간단한 애플리케이션을 개발해본다.
11장, '마이크로서비스 시작하기'에서는 지난 10년 간의 애플리케이션 아키텍처의 진화에 대해 설명한다. 마이크로서비스 및 클라우드-네이티브 애플리케이션이 필요한 이유를 생각해보고 클라우드-네이티브 애플리케이션을 구축하는 데 도움이 되는 다양한 스프링 프로젝트를 살펴본다.
12장, '스프링 부트 및 스프링 클라우드로 마이크로서비스 구축하기'에서는 스프링 클라우드 내 프로젝트를 사용해 마이크로서비스를 구현하는 방법을 살펴본다. 구성 관리, 서비스 검색, 서킷 브레이커(circuit breakers) 및 지능형 라우팅을 알아본다. 스프링 클라우드 컨피그, 스프링 클라우드 버스, 립본(Ribbon), 유레카(Eureka), 주울(Zuul), 스프링 클라우드 슬루스(Sleuth), 집킨(Zipkin) 및 히스트릭스(Hystrix)를 사용해 마이크로서비스를 구현한다.
13장, '리액티브 프로그래밍'에서는 비동기 데이터 스트림을 사용한 프로그래밍을 설명한다. 리액티브 프로그래밍을 이해하고, 스프링 프레임워크에서 제공하는 기능을 간단히 살펴본다.
14장, '스프링 모범 사례'에서는 스프링을 사용해 엔터프라이즈 애플리케이션을 개발하고, 단위 테스트, 통합 테스트, 스프링 구성 유지 보수 등과 관련된 모범 사례를 소개한다.
15장, '스프링에서 코틀린 개발하기'에서는 빠르게 인기를 얻고 있는 JVM 언어인 코틀린을 소개한다. 15장에서는 이클립스에서 코틀린 프로젝트를 설정하는 방법의 지침을 제공한다. 코틀린을 사용해 새로운 스프링 부트 프로젝트를 만들고 단위 및 통합 테스트를 통해 몇 가지 기본 서비스를 구현한다.


정보제공 : Aladin

저자소개

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

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

송주경(옮긴이)

삼성전자와 LG전자 연구소에서 연구원으로 소프트웨어를 개발했다. 현재 기업과 대학에서 예술과 기술 융합을 비롯해 생활 속 과학, 창의적 사고와 코딩, 아트워크 실습 등 다양한 강의를 하고 있으며 관련 컨설팅도 진행 중이다.

정보제공 : Aladin

목차

1부 스프링과 스프링 부트 시작하기

1장. 스프링 환경 - 프레임워크, 모듈 및 프로젝트
__스프링 탐색과 진화
__스프링 프레임워크의 첫 번째 버전
____느슨한 결합 및 테스트 가능성
____아키텍처의 유연성
____복잡한 코드 감소
__스프링 프레임워크의 초기 - 스프링 프로젝트
____자바 EE 보다 앞서간 스프링 웹 서비스
__마이크로서비스로의 진화 - 스프링 부트 및 스프링 클라우드
____스프링 부트로 마이크로서비스를 빠르게 구축하기
____스프링 클라우드를 사용해 마이크로서비스와 클라우드 연결하기
____잠시 배운 것을 복습해보면
__스프링 모듈
__스프링 코어 컨테이너
__크로스 컷팅
__웹 - 스프링 MVC
____비즈니스 레이어
____데이터 레이어
__스프링 프로젝트
____스프링 부트
____스프링 클라우드
____스프링 데이터
____스프링 배치
____스프링 시큐리티
____스프링 HATEOAS
__스프링 프레임워크 5.0과 5.1의 새로운 기능
____기준선 업그레이드
____자바 11 지원
____스프링 프레임워크 코드에서 JDK8 기능 사용
____리액티브 프로그래밍 지원
____함수형 웹 프레임워크
____직소를 사용한 자바 모듈성
____코틀린 지원
____삭제된 기능
__스프링 부트 2.0과 2.1의 새로운 기능
__요약

2장. 의존 관계 주입 및 단위 테스트
__기술적 요구사항
__의존 관계
__의존 관계를 갖는 이유
__의존 관계 주입의 개념
____느슨하고 단단한 결합
____단단한 결합을 제거하고 코드를 느슨하게 결합하기
__스프링 프레임워크는 무엇을 할까?
____질문 1 - 스프링 IoC 컨테이너는 어떤 빈을 생성해야 하는지 어떻게 알까?
____질문 2 - 스프링 IoC 컨테이너는 빈의 의존 관계를 어떻게 알 수 있을까?
____스프링 IoC 컨테이너 생성
__스프링 프레임워크
____컨테이너 관리 빈
____자바 대 XML 구성
____애플리케이션 컨텍스트에 XML 구성 사용
____@Autowired 어노테이션
____@Primary 어노테이션
____@Qualifier 어노테이션
____의존 관계 주입 옵션
____스프링 빈 스코프 사용자 정의
____기타 중요한 스프링 어노테이션
__CDI 탐색
____CDI의 예
__스프링 애플리케이션 컨텍스트의 단위 테스트
____단위 테스트란?
____스프링 컨텍스트를 사용해 JUnit 작성
____모크를 사용한 단위 테스트
__요약

3장. 스프링 MVC로 웹 애플리케이션 구축
__기술적 요구사항
__자바 서블릿 웹 애플리케이션 아키텍처
____모델1 아키텍처
____모델2 아키텍처
____모델2 프론트 컨트롤러 아키텍처
__6가지 기본 플로우 예제가 있는 스프링 MVC 학습
____스프링 MVC 애플리케이션 설정
____플로우1 - 뷰 없는 간단한 컨트롤러 플로우
____플로우2 - 뷰(JSP)로 간단한 컨트롤러 플로우 만들기
____플로우3 - 모델이 있는 뷰로 전환하는 컨트롤러
____플로우4 - ModelAndView를 사용해 뷰로 전환하는 컨트롤러
____플로우5 - 폼이 있는 뷰로 전환하는 컨트롤러
____플로우6 - 이전 플로우에 유효성 검사 추가
__스프링 MVC
__스프링 MVC의 핵심 개념
____RequestMapping
____뷰 리솔루션
____핸들러 맵핑 및 인터셉터 탐색
____모델 속성
____세션 속성 사용
____InitBinder의 필요성
____@ControllerAdvice 어노테이션을 사용해 공통 기능 구현하기
__스프링 MVC 고급 기능 살펴보기
____예외 처리 구현하기
____애플리케이션 국제화
____정적 리소스 제공
____스프링 MVC와 부트 스트랩 통합하기
__스프링 MVC 애플리케이션의 단위 테스트 ? 기본 플로우
____플로우1 - 뷰 없는 간단한 컨트롤러 플로우
____플로우2 - 뷰가 있는 간단한 컨트롤러 플로우
____플로우3 - 모델이 있는 뷰로 전환하는 컨트롤러
____플로우4 - ModelAndView를 사용해 뷰로 전환하는 컨트롤러
____플로우5 - 폼이 있는 뷰로 전환하는 컨트롤러
____플로우6 - 이전 플로우에 유효성 검사 추가
__스프링 MVC 컨트롤러의 통합 테스트 작성
__스프링 시큐리티
____스프링 시큐리티 의존 관계 추가
____모든 요청을 인터셉트하도록 필터 설정
____로그아웃
__요약

4장. 스프링 부트 시작
__기술적 요구사항
__스프링 부트란?
____애플리케이션의 빠른 프로토타입 구축 단계
____스프링 부트의 기본 목표
____스프링 부트의 비기능적 특징
__스프링 부트로 Hello World 애플리케이션 구축하기
____spring-boot-starter-parent로 pom.xml 생성하기
____스타터 프로젝트로 pom.xml 구성
____spring-boot-maven-plugin 설정
____첫 번째 스프링 부트 launch 클래스 생성
____Hello World 애플리케이션 실행
____자동 설정
____스프링 부트 스타터 프로젝트
__스프링 이니셜라이저 시작하기
____첫 스프링 이니셜라이저 프로젝트 생성하기
__자동 설정
__애플리케이션 구성 외부화
____application.properties 시작하기
____application.properties를 통한 프레임워크 사용자 정의
____애플리케이션별로 사용자-정의 속성 정의하기
____다른 환경에 대한 프로파일 생성
____애플리케이션 구성을 제공하기 위한 기타 옵션
____YAML 구성
__임베디드 서버
____전통적인 자바 애플리케이션 배포
____임베디드 서버
____제티 및 언더토우 임베디드 서버로 전환하기
____JAR를 사용하는 대신 기존 WAR 파일 빌드
__개발자 도구를 사용해 생산성 향상
____브라우저에서 실시간 리로드 활성화
__애플리케이션 모니터링에 스프링 부트 액추에이터 사용하기
____HAL 브라우저를 사용해 액추에이터 엔드포인트 찾기
____애플리케이션 구성 속성
____환경 세부 정보
____애플리케이션 상태 모니터링
____매핑 정보 얻기
____빈 구성으로 디버깅하기
____중요한 매트릭스 탐색하기
____자동 설정의 디버그 정보 얻기
____디버깅
__요약

5장. 스프링 프레임워크 심화
__기술적 요구사항
__스프링과 AspectJ로 AOP 살펴보기
____크로스 컷팅 및 AOP 탐색
____중요한 AOP 용어
____AOP 프레임워크
____AOP 실습
__스프링으로 작업 스케줄링하기
____@Scheduled로 작업 스케줄링하기
____@Async를 사용해 비동기식으로 작업 실행하기
____작업 실행자
__스프링 프레임워크를 이용한 스크립팅
____JSR 223 - 자바TM 플랫폼용 스크립팅
____스프링 엔터프라이즈 애플리케이션에서 그루비 코드 실행하기
__요약

2부 스프링으로 REST API와 풀스택 애플리케이션 구축하기

6장. 스프링 부트로 REST API 구축
__REST
__첫 번째 REST API 설계
____REST API 연산을 위한 요청 메소드 및 URI 결정하기
____API 생성을 위한 고급 접근 방법
__스프링 부트로 Hello World API 만들기
____Hello World 문자열을 반환하는 API 만들기
____welcome JSON 응답을 리턴하는 REST API 만들기
____name 경로 변수로 welcome 메시지 만들기
__todo REST API 만들기
____빈과 서비스 설정
____todo 리스트 검색하기
____특정 Todo의 세부사항 검색
____Todo 추가
____Todo 업데이트
____Todo 삭제하기
__REST API에 대한 예외 처리 구현하기
____스프링 부트 디폴트 예외 처리
____예외 응답 커스터마이징
__HATEOAS
____응답으로 HATEOAS 링크 보내기
__REST API에 대한 유효성 검사 구현하기
____컨트롤러 메소드에서 유효성 검사 활성화하기
____빈에서 유효성 검사 정의하기
__OpenAPI 스펙을 사용한 REST 서비스 문서화
____스웨거 스펙 생성하기
____스웨거 스펙 살펴보기
__REST API 국제화 구현하기
__REST API 캐싱 구현하기
____caching-spring-boot-starter-cache를 위한 스타터 프로젝트
____애플리케이션의 캐싱 활성화하기
____데이터 캐싱
____JSR-107 캐싱 어노테이션
__클라우드에 스프링 부트 애플리케이션 배포하기
____클라우드 파운드리에 애플리케이션 배포하기
__요약

7장. 스프링 부트를 이용한 REST API 단위 테스트
__기술적 요구사항
__스프링 부트를 이용한 REST API 단위 테스트
____스프링 부트 스타터 테스트에 대한 의존 관계 추가
____BasicController API 단위 테스트
____TodoController API에 대한 단위 테스트
__스프링 부트와 REST API 통합 테스트
____BasicController에 대한 통합 테스트 작성
____TodoController API에 대한 통합 테스트
__단위 및 통합 테스트 모범 사례
__요약

8장. 스프링 시큐리티를 활용한 시큐리티 REST API
__기술적 요구사항
__스프링 시큐리티를 이용한 시큐리티 REST API
____REST API 시큐리티
____REST API 시큐리티 구현하기
____Todo API에 스프링 시큐리티 추가하기
__스프링 시큐리티
____로그 검토
____스프링 시큐리티 필터
____스프링 시큐리티의 인증
____스프링 시큐리티의 인증 확장 포인트
____스프링 시큐리티의 권한
____스프링 시큐리티의 인증 확장 포인트
____서비스 메소드에 대한 시큐리티 어노테이션 제공
____서비스 메소드에 대한 JSR-250 어노테이션 제공
____스프링 시큐리티 pre 및 post 어노테이션
____스프링 시큐리티를 이용한 시큐리티 모범 사례 구현
__OAuth2 인증
____OAuth2 상위 플로우
____OAuth2 서버 생성하기
__JWT를 이용한 인증
____JWT
____OAuth2와 함께 JWT 사용하기
__요약

9장. 리액트 및 스프링 부트가 포함된 풀스택 앱
__기술적 요구사항
__풀스택 아키텍처
____풀스택 아키텍처의 필요성
__리액트
____프론트 엔드 애플리케이션의 컴포넌트
____JSX
____JSX와 컴포넌트 결합하기
__첫 번째 리액트 애플리케이션 빌드
____create-react-app
____비주얼 스튜디오 코드 IDE로 리액트 애플리케이션 가져오기
____리액트 프레임워크 초기화하기
____Todo 컴포넌트 생성하기
____기본 Todo 관리 기능 추가하기
____RESTful API를 호출하는 todo 추가하기
____인증
__요약

10장. 스프링 데이터로 데이터 관리하기
__기술적 요구사항
__다양한 데이터 레파지토리의 과제
__관계형 데이터베이스와 통신하기
__스프링 데이터
____스프링 데이터 커먼즈
__스프링 데이터 JPA를 사용해 관계형 데이터베이스에 연결하기
____스프링 데이터 JPA 예제
____거래 관리 시작하기
__스프링 데이터를 이용한 몽고DB와의 상호 작용
____의존 관계 설정
____Person 엔티티 생성하기
____Person 레파지토리 생성하기
____단위 테스트에서 레파지토리 테스트하기
__스프링 데이터 REST를 사용해 REST API 생성하기
____GET 메소드
____POST 메소드
____검색 리소스
__요약

3부 스프링을 이용한 클라우드, 마이크로서비스 및 모범 사례

11장. 마이크로서비스 시작
__애플리케이션 개발 목표
__빠른 애플리케이션 구축 - 속도
__신뢰할 수 있는 애플리케이션 구축 - 안전
____신뢰성 - 애플리케이션이 예상대로 작동할까?
____가용성 - 애플리케이션을 항상 사용할 수 있을까?
____안전성 - 애플리케이션은 안전한가?
____성능 - 애플리케이션이 충분히 빠른가?
____높은 복원력 - 애플리케이션이 실패에 잘 반응할까?
__확장성 - 애플리케이션 로딩이 급격히 증가할 때 무엇을 지원해야 할까?
__모놀리식 애플리케이션 문제
____릴리스 업데이트의 문제 - 긴 릴리스 주기
____확장의 어려움
____새로운 기술을 적응시키는 데 어려움
____새로운 방법론 적용의 어려움
____현대적인 개발 사례 적용의 어려움
__마이크로서비스 시작
____마이크로서비스란 무엇일까?
____마이크로서비스 아키텍처의 큰 그림
____마이크로서비스 특성
____마이크로서비스 아키텍처의 장점
____마이크로서비스 문제
__클라우드-네이티브 애플리케이션
____12-팩터 앱이란 무엇일까?
__마이크로서비스를 위한 스프링 프로젝트
____스프링 부트
____스프링 클라우드 시작하기
__요약

12장. 스프링 부트 및 스프링 클라우드로 마이크로서비스 구축
__기술적 요구사항
__마이크로서비스
____마이크로서비스A 설정
____서비스 소비자 마이크로서비스 구축하기
__스프링 부트 및 스프링 클라우드 권장 버전 사용
__중앙 집중식 마이크로서비스 구성
____문제 기술
____솔루션
____옵션
____스프링 클라우드 컨피그
__이벤트 중심 접근법에 대한 개요
____JMS API를 이용한 스프링 JMS
____AMQP
__스프링 클라우드 버스
____스프링 클라우드 버스의 필요성
____스프링 클라우드 버스를 이용한 설정 변경 전파
____스프링 클라우드 버스 구현
__선언적 REST 클라이언트 - 페인
__마이크로서비스를 위한 로드 밸런싱 구현
____클라이언트-사이드 로드 밸런싱을 위한 립본
__네임 서버의 필요성
____마이크로서비스 URL 하드 코딩의 한계
__네임 서버 작동
____스프링 클라우드에서 지원하는 네임 서버 옵션
____유레카 명명 서비스 구현
__API 게이트웨이
____주울을 이용한 API 게이트웨이 구현
__분산 추적
____스프링 클라우드 슬루스 및 집킨 구현
__히스트릭스로 내결함성 구현
____서비스 소비자 마이크로서비스에 히스트릭스 통합
__요약

13장. 리액티브 프로그래밍
__기술적 요구사항
__리액티브 선언
____리액티브 시스템의 특성
__리액티브 유스케이스 - 주가 페이지
____전통적인 접근 방식
____리액티브 접근 방식
____전통적인 접근 방식과 리액티브 방식의 비교
__자바에서 리액티브 프로그래밍 구현
____리액티브 스트림
____리액터 프레임워크
____스프링 웹 리액티브로 리액티브 웹 애플리케이션 생성하기
____리액티브 데이터베이스와 통합
____SpringReactiveExampleApplication 실행
__요약

14장. 스프링 모범 사례
__메이븐 표준 디렉토리 레이아웃
__레이어 아키텍처를 사용한 애플리케이션 구축
__다른 레이어에 대한 별도의 컨텍스트 파일이 있다
__중요한 레이어에 대한 API와 impl 분리
__예외 처리 모범 사례
____예외 처리에 대한 스프링의 접근 방식
____권장 접근법
__스프링 구성 간결하게 유지
__ComponentScan에서 basePackageClasses 속성 사용
__스키마 참조에서 버전 번호를 사용하지 않는다
__필수 의존 관계에 대한 생성자 주입 선호
__스프링 프로젝트의 의존 관계 버전 관리
__단위 테스트 모범 사례
____비즈니스 레이어에 대한 테스트 작성
____웹 레이어에 대한 테스트 작성
____데이터 레이어에 대한 테스트 작성
____다른 애플리케이션 개발 모범 사례
__통합 테스트 모범 사례
____스프링 세션을 이용한 세션 관리
____레디스로 스프링 세션 구현
__캐싱 모범 사례
____spring-boot-starter-cache 의존 관계 추가
____캐싱 어노테이션 추가
__로깅 모범 사례
____로그백 프레임워크 사용
____log4j2
____프레임워크 독립 구성 제공
__요약

15장. 스프링에서 코틀린 개발
__기술적 요구사항
__코틀린
__코틀린 대 자바
____변수 생성 및 타입 유추
____변수의 불변성
____타입 시스템
____null 세이프
____코틀린의 함수 정의
____배열
____코틀린 컬렉션
____언체크된 예외 처리
____빈에 데이터 클래스 사용하기
__이클립스에서 코틀린 프로젝트 만들기
____코틀린 플러그인
____코틀린 프로젝트 생성
____코틀린 클래스 만들기
____코틀린 클래스 실행
__코틀린을 사용해 스프링 부트 프로젝트 생성
____pom.xml에 의존 관계 및 플러그인 추가
____스프링 부트 애플리케이션 클래스
____스프링 부트 애플리케이션 테스트 클래스
__코틀린을 이용한 REST 서비스 구현
____문자열을 반환하는 간단한 메소드
____객체를 반환하는 간단한 REST 메소드
____path 변수를 가진 GET 메소드
__요약


정보제공 : Aladin

관련분야 신착자료