나에게 필요한 지식과 기술을 검색해 보세요.

스프링 5 레시피(4판)

스프링 애플리케이션 개발에 유용한 161가지 문제 해결 기법(전2권)

지은이

다니엘 루비오, 조시 롱, 마틴 데이넘

옮긴이

이일웅

출간일

2018.09.21

레벨

초중급

평점

4.5(6명)

정가

48,000

총 결제 금액

48,000

전자책 사용 안내

전자책은 웹뷰어와 한빛+ 앱에서 열람할 수 있으며 PDF 다운로드는 지원되지 않습니다.

쪽수

1056P

ISBN

9791162249406

브랜드

한빛미디어

스프링 현업 개발자를 위한 스프링 5 실무 바이블(전2권)

 

이 책은 스프링 5에 새로 탑재된 기능 및 다양한 구성 옵션 등 업데이트된 프레임워크 전반을 실무에 유용한 해법을 제시하는 형식으로 다룹니다. IoC 컨테이너 같은 스프링 기초부터 스프링 AOP/AspectJ, 자바 EE 연계 및 원격 기술, 스프링 인티그레이션, 스프링 배치, 스프링 메시징, 트랜잭션, 스프링 MVC를 비롯하여 그레일즈 프레임워크, REST/웹 서비스 관련 실전 레시피도 제공합니다.

 

161가지 레시피는 과제/해결책/풀이로 구성되어 있어 현업에 유용합니다. 현업에서 풀어야 할 문제를 과제로 제시하고, 해결책으로 전반적인 방법을 확인합니다. 끝으로 실무에 당장 활용할 수 있는 예제를 중심으로 과제를 해결합니다. 

 

지금 바로 엔터프라이즈 자바 애플리케이션을 구축하는 데 유용한 최신 스프링 기능을 집중 조명하는 예제를 내려받아 프로젝트에 마음껏 활용하세요. 엄청나게 많은 시간을 절약해줄 겁니다!

 

* 독자의 편의를 고려해 분책할 수 있게  제본했습니다. 1권은 9장까지, 2권은 10장부터 끝까지 담고 있습니다.

 

10103_details.jpg

 

출판사 리뷰

★ 이 책의 대상 독자

이 책은 아키텍처를 단순화하고 자바 EE 플랫폼 영역 밖의 문제를 해결하려는 자바 개발자를 대상으로 합니다. 이미 스프링 프로젝트를 경험한 독자는 미처 알지 못했던 새로운 기술을 더 깊이 있게 배울 수 있고 스프링이 처음인 독자는 바로 이 책으로 입문할 수 있습니다.

 

우리는 독자 여러분이 자바와 IDE에 어느 정도 익숙하다고 가정합니다. 자바 기술을 클라이언트 애플리케이션 개발에 사용할 수도 있지만 자바 커뮤니티의 절대 다수는 엔터프라이즈 영역에 있고 또 이 분야의 기술이야말로 효용 가치가 가장 높은 게 사실입니다. 따라서 서블릿 API 같은 기초적인 엔터프라이즈 프로그래밍 개념은 이미 여러분이 익숙하다고 봅니다.

 

★ 이 책을 읽고 나면 습득할 내용

- 웹 개발에 필수인 스프링 MVC 사용 방법

- 스프링과 REST로 웹 서비스를 개발하고 엔터프라이즈 자바 애플리케이션과 통합하는 방법

- 스프링 배치, NoSQL을 이용해 다양한 클라우드 컴퓨팅 서비스와 리소스를 구축, 연계하는 방법

- 스프링에서 자바 EE를 응용하고 다른 자바 API를 연동하는 방법

- 그레일즈 코드 활용 방법

 

★ 이일웅 역자가 추천하는 학습 로드맵

이 책을 어디부터 읽기 시작해 어떤 용도로, 어떻게 활용할지는 독자 여러분의 스프링 이해도와 실무 경험에 따라 달라집니다. 하지만 이 책을 읽는 독자 여러분이 대부분 스프링을 들어보기는 했으나 아직 익숙하지는 않고 스프링 개발 경험도 그리 많지 않은 웹 개발자라고 보고 대략 다음 다섯 단계로 분류하여 학습 로드맵을 추천합니다.

 

[1단계]

스프링의 기본 개념을 이해하고 개발 환경을 설정합니다. 2 ~ 5단계 학습을 진행하는 데 필요한 선수 지식을 습득합니다.

- 1장. 스프링 개발 툴

- 2장. 스프링 코어

 

[2단계]

스프링 프레임워크에서 가장 활용도가 높고 중요한 웹 애플리케이션 개발 분야를 선정하여 학습합니다(웹 개발 프로젝트를 스프링 프레임워크로 처음 시작하는 분들께 추천합니다).

- 3장. 스프링 MVC

- 4장. 스프링 REST

- 9장. 데이터 액세스

- 16장. 스프링 테스트

 

[3단계]

기본 다음으로 중요한 보안, 트랜잭션, 비동기 처리 분야를 빠르게 학습하여 자신의 등급을 향상시킵니다 (2단계 내용을 어느 정도 숙지한 분이라면 여기부터 시작하는 게 좋습니다).

- 5장. 스프링 MVC 비동기 처리

- 7장. 스프링 시큐리티

- 10장. 스프링 트랜잭션 관리

 

[4단계]

실제 프로젝트 현장에서 의외로 많이 쓰이는 데이터 연계 처리, 메시징, 원격 호출, NoSQL 저장소 활용 등 각종 스프링 고급 기능을 학습해서 애플리케이션 아키텍트급의 개발자로 발전합니다(1 ~ 3단계에 해당하는 스프링의 전반적인 지식과 실무 경험을 겸비한 분들이 도전할 만한 코스입니다).

- 11장. 스프링 배치

- 12장. 스프링과 NoSQL

- 13장. 스프링 자바 엔터프라이즈 서비스와 원격 기술

- 14장. 스프링 메시징

- 15장. 스프링 인티그레이션

 

[5단계]

당장은 몰라도 스프링을 사용하는 데 전혀 지장은 없는 선택적인 분야로, 연관된 프로젝트를 수행하는 경우에 참고하여 기술을 이해합니다.

- 6장. 스프링 소셜

- 8장. 스프링 모바일

- 17장. 그레일즈

- 부록

저자

목차

CHAPTER 1 스프링 개발 툴

[레시피 1-1] STS로 스프링 애플리케이션 빌드하기

[레시피 1-2] 인텔리제이로 스프링 애플리케이션 빌드하기

[레시피 1-3] 메이븐 CLI로 스프링 애플리케이션 빌드하기

[레시피 1-4] 메이븐 래퍼로 스프링 애플리케이션 빌드하기

[레시피 1-5] 그레이들 CLI로 스프링 애플리케이션 빌드하기

[레시피 1-6] 그레이들 래퍼로 스프링 애플리케이션 빌드하기

마치며

 

CHAPTER 2 스프링 코어

[레시피 2-1] 자바로 POJO 구성하기

[레시피 2-2] 생성자 호출해서 POJO 생성하기

[레시피 2-3] POJO 레퍼런스와 자동 연결을 이용해 다른 POJO와 상호 작용하기

[레시피 2-4] @Resource와 @Inject를 붙여 POJO 자동 연결하기

[레시피 2-5] @Scope를 붙여 POJO 스코프 지정하기

[레시피 2-6] 외부 리소스(텍스트, XML, 프로퍼티, 이미지 파일)의 데이터 사용하기

[레시피 2-7] 프로퍼티 파일에서 로케일마다 다른 다국어 메시지를 해석하기

[레시피 2-8] 애너테이션을 이용해 POJO 초기화/폐기 커스터마이징하기

[레시피 2-9] 후처리기를 만들어 POJO 검증/수정하기

[레시피 2-10] 팩토리(정적 메서드, 인스턴스 메서드, 스프링 FactoryBean)로 POJO 생성하기 96

[레시피 2-11] 스프링 환경 및 프로파일마다 다른 POJO 로드하기

[레시피 2-12] POJO에게 IoC 컨테이너 리소스 알려주기

[레시피 2-13] 애너테이션을 활용해 애스펙트 지향 프로그래밍하기

[레시피 2-14] 조인포인트 정보 가져오기

[레시피 2-15] @Order로 애스펙트 우선순위 설정하기

[레시피 2-16] 애스펙트 포인트컷 재사용하기

[레시피 2-17] AspectJ 포인트컷 표현식 작성하기

[레시피 2-18] 인트로덕션을 이용해 POJO에 기능 더하기

[레시피 2-19] AOP를 이용해 POJO에 상태 추가하기

[레시피 2-20] AspectJ 애스펙트를 로드 타임 위빙하기

[레시피 2-21] 스프링에서 AspectJ 애스펙트 구성하기

[레시피 2-22] AOP를 이용해 POJO를 도메인 객체에 주입하기

[레시피 2-23] 스프링 TaskExecutor로 동시성 적용하기

[레시피 2-24] POJO끼리 애플리케이션 이벤트 주고받기

마치며

 

CHAPTER 3 스프링 MVC

[레시피 3-1] 간단한 스프링 MVC 웹 애플리케이션 개발하기

[레시피 3-2] @RequestMapping에서 요청 매핑하기

[레시피 3-3] 핸들러 인터셉터로 요청 가로채기

[레시피 3-4] 유저 로케일 해석하기

[레시피 3-5] 로케일별 텍스트 메시지 외부화하기

[레시피 3-6] 이름으로 뷰 해석하기

[레시피 3-7] 뷰와 콘텐트 협상 활용하기

[레시피 3-8] 뷰에 예외 매핑하기

[레시피 3-9] 컨트롤러에서 폼 처리하기

[레시피 3-10] 마법사 폼 컨트롤러로 다중 페이지 폼 처리하기

[레시피 3-11] 표준 애너테이션(JSR-303)으로 빈 검증하기

[레시피 3-12] 엑셀 및 PDF 뷰 생성하기

마치며

 

CHAPTER 4 스프링 REST

[레시피 4-1] REST 서비스로 XML 발행하기

[레시피 4-2] REST 서비스로 JSON 발행하기

[레시피 4-3] 스프링으로 REST 서비스 액세스하기

[레시피 4-4] RSS/아톰 피드 발행하기

마치며

 

CHAPTER 5 스프링 MVC : 비동기 처리

[레시피 5-1] 트롤러에서 TaskExecutor로 요청을 비동기 처리하기

[레시피 5-2] 응답 출력기

[레시피 5-3] 비동기 인터셉터

[레시피 5-4] 웹소켓

[레시피 5-5] 스프링 웹플럭스로 리액티브 애플리케이션 개발하기

[레시피 5-6] 리액티브 컨트롤러로 폼 처리하기

[레시피 5-7] 리액티브 REST 서비스로 JSON 발행/소비하기

[레시피 5-8] 비동기 웹 클라이언트

[레시피 5-9] 리액티브 핸들러 함수 작성하기

마치며

 

CHAPTER 6 스프링 소셜

[레시피 6-1] 스프링 소셜 구성하기

[레시피 6-2] 트위터 접속하기

[레시피 6-3] 페이스북 접속하기

[레시피 6-4] 서비스 공급자 접속 상태 보여주기

[레시피 6-5] 트위터 API 활용하기

[레시피 6-6] UsersConnectionRepository로 저장하기

[레시피 6-7] 스프링 소셜과 스프링 시큐리티 연계하기

마치며

 

CHAPTER 7 스프링 시큐리티

[레시피 7-1] URL 접근 보안하기

[레시피 7-2] 웹 애플리케이션 로그인하기

[레시피 7-3] 유저 인증하기

[레시피 7-4] 접근 통제 결정하기

[레시피 7-5] 메서드 호출 보안하기

[레시피 7-6] 뷰에서 보안 처리하기

[레시피 7-7] 도메인 객체 보안 처리하기

[레시피 7-8] 웹플럭스 애플리케이션에 보안 기능 추가하기

마치며

 

CHAPTER 8 스프링 모바일

[레시피 8-1] 스프링 모바일 없이 기기 감지하기

[레시피 8-2] 스프링 모바일을 이용해 기기 감지하기

[레시피 8-3] 사이트 기본 설정

[레시피 8-4] 기기 정보에 따라 뷰 렌더링하기

[레시피 8-5] 사이트 스위칭 구현하기

마치며

 

CHAPTER 9 데이터 액세스

JDBC를 직접 사용할 경우의 문제점

애플리케이션 DB 구성하기

DAO 디자인 패턴

JDBC로 DAO 구현하기

스프링 데이터 소스 구성하기

DAO 실행하기

[레시피 9-1] JDBC 템플릿으로 DB 수정하기

[레시피 9-2] JDBC 템플릿으로 DB 조회하기

[레시피 9-3] JDBC 템플릿을 간단하게 생성하기

[레시피 9-4] JDBC 템플릿에서 기명 매개변수 사용하기

[레시피 9-5] 스프링 JDBC 프레임워크에서 예외 처리하기

[레시피 9-6] ORM 프레임워크 활용하기

[레시피 9-7] 스프링에서 ORM 리소스 팩토리 구성하기

[레시피 9-8] 하이버네이트 컨텍스트 세션으로 객체 저장하기

[레시피 9-9] JPA 컨텍스트를 주입하여 객체 저장하기

[레시피 9-10] 스프링 데이터 JPA로 JPA 코드 간소화하기

마치며

 

CHAPTER 10 스프링 트랜잭션 관리

[레시피 10-1] 트랜잭션 관리의 중요성

[레시피 10-2] 트랜잭션 관리자 구현체 선정하기

[레시피 10-3] 트랜잭션 관리자 API를 이용해 프로그램 방식으로 트랜잭션 관리하기

[레시피 10-4] 트랜잭션 템플릿을 이용해 프로그램 방식으로 트랜잭션 관리하기

[레시피 10-5] @ Transactional을 붙여 선언적으로 트랜잭션 관리하기

[레시피 10-6] 트랜잭션 전달 속성 설정하기

[레시피 10-7] 트랜잭션 격리 속성 설정하기

[레시피 10-8] 트랜잭션 롤백 속성 설정하기

[레시피 10-9] 트랜잭션 타임아웃, 읽기 전용 속성 설정하기

[레시피 10-10] 로드타임 위빙을 이용해 트랜잭션 관리하기

마치며

 

CHAPTER 11 스프링 배치

런타임 메타데이터 모델

[레시피 11-1] 스프링 배치 기초 공사하기

[레시피 11-2] 데이터 읽기/쓰기

[레시피 11-3] 커스텀 ItemWriter/ItemReader 작성하기

[레시피 11-4] 출력하기 전에 입력 데이터 처리하기

[레시피 11-5] 트랜잭션을 걸어 편하게 삽시다

[레시피 11-6] 재시도

[레시피 11-7] 스텝 실행 제어하기

[레시피 11-8] 잡 실행하기

[레시피 11-9] 잡을 매개변수화하기

마치며

 

CHAPTER 12 스프링 NoSQL

[레시피 12-1] 몽고디비

[레시피 12-2] 레디스

[레시피 12-3] Neo4j

[레시피 12-4] 카우치베이스

마치며

 

CHAPTER 13 스프링 자바 엔터프라이즈 서비스와 원격 기술

[레시피 13-1] 스프링 빈을 JMX MBean으로 등록하기

[레시피 13-2] JMX 알림 주고받기

[레시피 13-3] 스프링에서 원격 JMX MBean 액세스하기

[레시피 13-4] 스프링에서 이메일 보내기

[레시피 13-5] 스프링 쿼츠로 작업 스케줄링하기

[레시피 13-6] 스프링으로 작업 스케줄링하기

[레시피 13-7] RMI로 서비스 표출/호출하기

[레시피 13-8] HTTP로 서비스 표출/호출하기

[레시피 13-9] JAX-WS로 SOAP 웹 서비스 표출/호출하기

[레시피 13-10] 규약우선 SOAP 웹 서비스

[레시피 13-11] 스프링 웹 서비스로 SOAP 웹 서비스 표출/호출하기

[레시피 13-12] 스프링 웹 서비스와 XML 마샬링을 이용해 SOAP 웹 서비스 개발하기

마치며

 

CHAPTER 14 스프링 메시징

[레시피 14-1] 스프링에서 JMS 메시지 주고받기

[레시피 14-2] JMS 메시지 변환하기

[레시피 14-3] JMS 트랜잭션 관리하기

[레시피 14-4] 스프링에서 메시지 주도 POJO 생성하기

[레시피 14-5] JMS 커넥션 캐싱/풀링하기

[레시피 14-6] 스프링에서 AMQP 메시지 주고받기

[레시피 14-7] 스프링 카프카로 메시지 주고받기

마치며

 

CHAPTER 15 스프링 인티그레이션

[레시피 15-1] 서로 다른 두 시스템 연계하기

[레시피 15-2] JMS를 이용해 두 시스템 연계하기

[레시피 15-3] 스프링 인티그레이션 메시지에서 컨텍스트 정보 얻기

[레시피 15-4] 파일시스템을 사용해 시스템 연계하기

[레시피 15-5] 메시지 형변환하기

[레시피 15-6] 스프링 인티그레이션을 이용해 에러 처리하기

[레시피 15-7] 스필리터와 애그리게이터로 연계 분기 처리하기

[레시피 15-8] 라우터를 이용해 조건부 라우팅하기

[레시피 15-9] 스프링 배치를 응용해 이벤트 스테이징하기

[레시피 15-10] 게이트웨이 활용하기

마치며

 

CHAPTER 16 스프링 테스트

[레시피 16-1] JUnit과 TestNG로 단위 테스트 작성하기

[레시피 16-2] 단위/통합 테스트 작성하기

[레시피 16-3] 스프링 MVC 컨트롤러에 대한 단위 테스트 작성하기

[레시피 16-4] 통합 테스트 시 애플리케이션 컨텍스트 관리하기

[레시피 16-5] 통합 테스트에 테스트 픽스처 주입하기

[레시피 16-6] 통합 테스트에서 트랜잭션 관리하기

[레시피 16-7] 통합 테스트에서 DB 액세스하기

[레시피 16-8] 스프링 공통 테스트 애너테이션 활용하기

[레시피 16-9] 스프링 MVC 컨트롤러에 대한 통합 테스트 작성하기

[레시피 16-10] REST 클라이언트에 대한 통합 테스트 작성하기

마치며

 

CHAPTER 17 그레일즈

[레시피 17-1] 그레일즈 설치하기

[레시피 17-2] 그레일즈 애플리케이션 만들기

[레시피 17-3] 그레일즈 플러그인

[레시피 17-4] 그레일즈의 개발, 테스트, 운영 환경

[레시피 17-5] 애플리케이션 도메인 클래스 작성하기

[레시피 17-6] 애플리케이션 도메인 클래스에 대한 CRUD 컨트롤러 및 뷰 작성하기

[레시피 17-7] 다국어(I18n) 메시지 프로퍼티 구현하기

[레시피 17-8] 영구 저장소 바꾸기

[레시피 17-9] 로그 출력 커스터마이징하기

[레시피 17-10] 단위/통합 테스트 실행하기

[레시피 17-11] 커스텀 레이아웃 및 템플릿

[레시피 17-12] GORM 쿼리

[레시피 17-13] 커스텀 태그 생성하기

[레시피 17-14] 보안 기능 추가하기

마치며

 

부록 A 클라우드에 배포하기

부록 B 캐싱

부록 C 예제 소스 실습 안내

리뷰

전체 평점

4.5

오탈자

등록된 오탈자가 없어요

오탈자를 발견하셨다면 작성해주세요.

48,000

48,000