본문 바로가기

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

스프링 교과서 상세페이지

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

스프링 교과서

소장종이책 정가33,000
전자책 정가20%26,400
판매가26,400
스프링 교과서 표지 이미지

스프링 교과서작품 소개

<스프링 교과서> 스프링 기초 이론부터 스프링 부트, 웹 애플리케이션 구현, 보안 강화, 리팩터링, 테스트까지 개발 전반의 내용을 책 한 권에 모두 담았다!

이 책의 최종 목표는 스프링을 다양한 예제를 천천히 따라 하며 배우고, 더불어 실무 감각을 높여 실전에 바로 적용하는 것이다.
이를 위해 1부에서는 기초를 배우고 2부에서는 주어진 실습으로 직접 웹 애플리케이션을 구현한다. 1부에서는 스프링의 기본 구성 요소인 스프링 컨텍스트와 스프링 애스팩트의 사용 방법을 학습한다.
책의 후반부에서 모든 스프링의 기능이 이러한 필수 구성 요소에 의존한다는 것을 알게 될 것이다. 2부에서는 실제로 자주 사용되는 스프링 기능으로 앱을 구현하는 방법을 학습한다. 그리고 스프링이 이러한 작업을 간단하고 쉽게 만들어준다는 것을 알게 될 것이다.
스프링 앱에서 구현한 기능에 대한 단위 테스트와 통합 테스트 작성 방법까지 다루고 있기에 이 한 권으로 개발 전반의 내용을 배울 수 있다. 꼭 배워야 할 개념들만 확실하게 담은 이 책으로 스프링에 쉽게 입문하고 실무에 바로 적용해 보자.


저자 프로필

라우렌치우 스필커 Laurentiu Spilca

  • 경력 엔다바 전문 개발 리드

2024.06.13. 업데이트 작가 프로필 수정 요청

엔다바(Endava)에서 전문 개발 리드이자 트레이너로 일하며 유럽, 미국, 아시아의 고객을 대상으로 하는 금융 시장 프로젝트의 개발을 이끌고 있다. 10년 이상의 경력이 있는 그는 고품질의 소프트웨어를 제공하는 것뿐만 아니라 지식을 공유하고 다른 이들의 역량 향상을 돕는 것이 중요하다고 믿는다. 이러한 신념은 그가 자바 기술 관련 코스를 설계하고 가르치며, 발표와 워크숍을 진행하도록 이끌었다.


저자 소개

엔다바(Endava)에서 전문 개발 리드이자 트레이너로 일하며 유럽, 미국, 아시아의 고객을 대상으로 하는 금융 시장 프로젝트의 개발을 이끌고 있다. 10년 이상의 경력이 있는 그는 고품질의 소프트웨어를 제공하는 것뿐만 아니라 지식을 공유하고 다른 이들의 역량 향상을 돕는 것이 중요하다고 믿는다. 이러한 신념은 그가 자바 기술 관련 코스를 설계하고 가르치며, 발표와 워크숍을 진행하도록 이끌었다. 트위터에서도 활동하는데 계정은 @laurspilca이다./마이크로서비스 아키텍처에 기반한 대규모 IoT 플랫폼(SmartThings) 구축과 13억 계정 플랫폼의 클라우드화를 리드했고, 미디어 플래폼의 MSA 전환 및 새로운 고객 주도형 서비스를 작게 시도하고 있다. 분산 시스템 설계와 클라우드 네이티브 개발, DevOps 활동, SRE, 개발 조직 문화에 주목해왔으며 100세 인생을 재미있게 보낼 프로그래밍과 소프트웨어 기술에 관심이 많다. 개인 시간에는 아이들과 게임이나 검도를 하고, 스쿠버 다이빙을 하며 시간을 보낸다. 『마이크로서비스 아키텍처 구축』을 번역했고, 『ABOUT .NET XML 웹 서비스』, 『PHP 웹 서버 구축하기』를 집필했다.

목차

1부 기초

1장 현실 세계의 스프링
1.1 마이크로서비스 아키텍처로 진화
1.2 스프링 생태계
__1.2.1 스프링 코어의 이해: 스프링 기초
__1.2.2 스프링 데이터 액세스 기능을 사용한 앱 영속성 구현
__1.2.3 웹 앱 개발을 위한 스프링 MVC 기능
__1.2.4 스프링 테스트 기능
__1.2.5 스프링 생태계의 프로젝트
1.3 실제 시나리오에서 스프링
__1.3.1 백엔드 앱 개발에서 스프링 사용
__1.3.2 자동화 테스트 앱에서 스프링 사용
__1.3.3 데스크톱 앱 개발에서 스프링 사용
__1.3.4 모바일 앱에서 스프링 사용
1.4 프레임워크를 사용하지 말아야 할 때
__1.4.1 작게 만들어야 한다
__1.4.2 보안에는 맞춤형 코드가 필요하다
__1.4.3 기존의 과도한 맞춤화로 프레임워크가 실용적이지 못하다
__1.4.4 프레임워크로 바꾸어도 이점이 없다
1.5 이 책에서 배울 것
1.6 요약

2장 스프링 컨텍스트: 빈 정의
2.1 메이븐 프로젝트 생성
2.2 스프링 컨텍스트에 새로운 빈 추가
__2.2.1 @Bean 애너테이션을 사용하여 스프링 컨텍스트에 빈 추가
__2.2.2 스테레오타입 애너테이션으로 스프링 컨텍스트에 빈 추가
__2.2.3 프로그래밍 방식으로 스프링 컨텍스트에 빈 추가
2.3 요약

3장 스프링 컨텍스트: 빈 작성
3.1 구성 파일에서 정의된 빈 간 관계 구현
__3.1.1 두 @Bean 메서드 간 직접 메서드를 호출하는 빈 작성
__3.1.2 @Bean 메서드의 매개변수로 빈 와이어링하기
3.2 @Autowired 애너테이션을 사용한 빈 주입
__3.2.1 @Autowired로 클래스 필드를 이용한 값 주입
__3.2.2 @Autowired를 사용하여 생성자로 값 주입
__3.2.3 setter를 이용한 의존성 주입 사용
3.3 순환 의존성 다루기
3.4 스프링 컨텍스트에서 여러 빈 중 선택하기
3.5 요약

4장 스프링 컨텍스트: 추상화
4.1 계약 정의를 위한 인터페이스 사용
__4.1.1 구현 분리를 위해 인터페이스 사용
__4.1.2 시나리오 요구 사항
__4.1.3 프레임워크 없이 요구 사항 구현
4.2 추상화와 함께 의존성 주입
__4.2.1 스프링 컨텍스트에 포함될 객체 정하기
__4.2.2 추상화에 대한 여러 구현체 중에서 오토와이어링할 것을 선택
4.3 스테레오타입 애너테이션으로 객체의 책임에 집중
4.4 요약
5장 스프링 컨텍스트: 빈의 스코프 및 수명 주기
5.1 싱글톤 빈 스코프 사용
__5.1.1 싱글톤 빈의 작동 방식
__5.1.2 실제 시나리오의 싱글톤 빈
__5.1.3 즉시 및 지연 인스턴스 생성 방식
5.2 프로토타입 빈 스코프 사용
__5.2.1 프로토타입 빈의 동작 방식
__5.2.2 실제 시나리오에서 프로토타입 빈 관리
5.3 요약

6장 스프링 AOP로 애스펙트 사용
6.1 스프링에서 애스펙트 작동 방식
6.2 스프링 AOP를 사용한 애스펙트 구현
__6.2.1 간단한 애스펙트 구현
__6.2.2 가로챈 메서드의 매개변수 및 반환 값 변경
__6.2.3 애너테이션된 메서드 가로채기
__6.2.4 사용 가능한 다른 어드바이스 애너테이션
6.3 애스펙트 실행 체인
6.4 요약

2부 구현
7장 스프링 부트와 스프링 MVC 이해
7.1 웹 앱이란
__7.1.1 웹 앱에 대한 일반적인 개요
__7.1.2 스프링으로 웹 앱을 구현하는 다양한 방식
__7.1.3 웹 앱 개발에서 서블릿 컨테이너 사용
7.2 스프링 부트의 마법
__7.2.1 프로젝트 초기화 서비스를 이용한 스프링 부트 프로젝트 생성
__7.2.2 의존성 스타터를 사용한 의존성 관리 간소화
__7.2.3 의존성에 기반을 둔 관례에 따라 autoconfiguration 사용
7.3 스프링 MVC로 웹 앱 구현
7.4 요약

8장 스프링 부트와 스프링 MVC를 이용한 웹 앱 구현
8.1 동적 뷰를 사용한 웹 앱 구현
__8.1.1 HTTP 요청에서 데이터 얻기
__8.1.2 클라이언트에서 서버로 데이터를 전송하려고 요청 매개변수 사용
__8.1.3 경로 변수로 클라이언트에서 서버로 데이터 전송
8.2 HTTP GET과 POST 메서드 사용
8.3 요약

9장 스프링 웹 스코프
9.1 스프링 웹 앱에서 요청 스코프 사용
9.2 스프링 웹 앱에서 세션 스코프 사용
9.3 스프링 웹 앱에서 애플리케이션 스코프 사용
9.4 요약
10장 REST 서비스 구현
10.1 REST 서비스를 이용한 앱 간 데이터 교환
10.2 REST 엔드포인트 구현
10.3 HTTP 응답 관리
__10.3.1 객체를 응답 본문에 전송
__10.3.2 응답 상태 및 헤더 설정
__10.3.3 엔드포인트 수준에서 예외 관리
10.4 요청 본문을 사용하여 클라이언트의 데이터 가져오기
10.5 요약

11장 REST 엔드포인트 사용
11.1 스프링 클라우드 OpenFeign으로 REST 엔드포인트 호출
11.2 RestTemplate으로 REST 엔드포인트 호출
11.3 WebClient로 REST 엔드포인트 호출
11.4 요약

12장 스프링 앱에서 데이터 소스 사용
12.1 데이터 소스
12.2 JdbcTemplate으로 영속성 데이터 작업
12.3 데이터 소스 구성을 사용자 정의
__12.3.1 애플리케이션 프로퍼티 파일에서 데이터 소스 정의
__12.3.2 사용자 정의 DataSource 빈 사용
12.4 요약

13장 스프링 앱에서 트랜잭션 사용
13.1 트랜잭션
13.2 스프링에서 트랜잭션의 작동 방식
13.3 스프링 앱에서 트랜잭션 사용
13.4 요약

14장 스프링 데이터로 데이터 영속성 구현
14.1 스프링 데이터란
14.2 스프링 데이터의 작동 방식
14.3 스프링 데이터 JDBC 사용
14.4 요약

15장 스프링 앱 테스트
15.1 올바른 테스트 작성
15.2 스프링 앱에서 테스트 구현
__15.2.1 단위 테스트 구현
__15.2.2 통합 테스트 구현
15.3 요약

부록 A
A.1 아키텍처 방식
A.2 컨텍스트 구성에 XML 사용
A.3 HTTP 기초 이해
A.4 JSON 형식 사용
A.5 MySQL 설치와 데이터베이스 생성
A.6 권장 도구
A.7 심화 학습용 추천 자료
A.8 IntelliJ에서 예제 프로젝트 오픈 및 실행


리뷰

구매자 별점

0.0

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

0명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

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

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

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

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



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

spinner
앱으로 연결해서 다운로드하시겠습니까?
닫기 버튼
대여한 작품은 다운로드 시점부터 대여가 시작됩니다.
앱으로 연결해서 보시겠습니까?
닫기 버튼
앱이 설치되어 있지 않으면 앱 다운로드로 자동 연결됩니다.
모바일 버전