전문가를 위한 스프링 5
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
저자(글) 율리아나 코스미나
스프링 프레임워크와 스프링 부트 등의 여러 제품의 개발사인 Pivotal 사(社)가 운영하는 스프링 공인 스프링 웹 애플리케이션 개발자 자격과 스프링 공인 스프링 전문가 자격을 취득했습니다. 또한 Apress 출판사에서 출판한 Pivotal 공인 스프링 개발 전문가 자격증 관련 서적과 Pivotal 공인 스프링 웹 개발 전문가 자격 관련 서적을 저술했습니다. 현재 Bearing Point Software 사(社)의 소프트웨어 아키텍트이고 깃허브(GitHub)나 스택 오버플로(Stack Overflow) 등에서 활발하게 활동하는 코더이면서 소프트웨어 컨트리뷰터이기도 합니다.
저자(글) 롭 해롭
고성능, 고확장성 엔터프라이즈 애플리케이션 구축을 전문적으로 하는 소프트웨어 컨설턴트입니다. 또한 복잡한 설계 이슈를 이해하고 해결하는 특별한 재능을 가진 숙련된 아키텍트입니다. 자바와 닷넷(.NET) 분야의 깊은 지식을 바탕으로 양 플랫폼을 사용하는 여러 프로젝트를 성공적으로 구축해 왔습니다. 또한 광범위한 산업 영역에서 풍부한 경험을 쌓아왔는데 특히 리테일과 공공 영역에서 활발히 활동해 왔습니다. Harrop은 이 책을 포함해 다섯 권을 저술했으며, 스프링 프레임워크와 관련된 광범위한 자료를 제공해 널리 호평을 받은 이 책의 지난 네 번째 판까지의 역대 저자이기도 합니다.
저자(글) 크리스 샤이퍼
스프링 프레임워크, 스프링 부트, 그 밖에 다른 도구를 만드는 Pivotal 사(社)에서 근무하는 스프링 프로젝트의 수석 소프트웨어 개발자입니다.
저자(글) 클라렌스 호
홍콩에 본사를 둔 소프트웨어 컨설팅 회사인 SkywideSoft Technology Limited 사(社)의 선임 자바 아키텍트입니다. IT 분야에서 20년 이상 종사해 오면서, 많은 사내 애플리케이션 개발 프로젝트의 팀 리더를 수행했으며 고객에게 엔터프라이즈 솔루션 컨설팅 서비스를 제공했습니다.
번역 이승룡
스프링 프레임워크 컨트리뷰터와 아파치 재단 커미터 활동을 하고 있습니다. 오픈 소스 소프트웨어 개발과 확산에도 관심이 많으며 오픈 플랫폼 개발자 커뮤니티(OPDC)에서 전자정부 표준 프레임워크 에반젤리스트로도 활동하고 있습니다.
번역 김성윤
21세기 직전부터 애플리케이션 개발자, 소프트웨어 아키텍트로 활동하다 현재는 시민의 일상을 뒷받침하는 대형 시스템을 운영하고 있습니다. 뭐든 손으로 직접 해봐야 직성이 풀리며, 운영 중인 업무에서 매일같이 발생하는 거대 데이터를 적시에 적절히 활용하는 방법에 관심이 많습니다.
번역 서경석
IT 기업에서 오픈 소스 기반의 미들웨어 솔루션 개발 및 컨설팅 업무를 하고 있는 개발자이자 컨설턴트입니다. 자바를 기반으로 하는 다양한 IT 프로젝트에 참여했으며, 오픈 소스 기반의 기업용 프레임워크 개발과 모니터링 솔루션 개발에 관심이 많아 관련 업무를 수행했습니다.
작가의 말
스프링 프레임워크의 버전 5를 다루는 이 책은, 시장을 주도하는 엔터프라이즈 자바 애플리케이션 개발 프레임워크인 스프링 프레임워크 5의 강력한 기능을 활용할 때 참고할 수 있는 가장 종합적이고 전문적인 스프링 참고 자료이며 실용적인 가이드입니다.
이 책에서는 스프링의 핵심을 알아보면서 하이버네이트(Hibernate), JPA 2, 타일즈(Tiles), 타임리프(Thymeleaf), 웹소켓(WebSocket)과 같은 선도적인 자바 기술과 스프링을 통합하는 방법을 알아봅니다. 또한, 자바 구성 클래스, 람다 표현식, 스프링 부트(Boot), 반응형 프로그래밍을 사용하는 것에 초점을 맞춥니다. 그리고 리모팅(remoting) 지원, 트랜잭션, 웹과 프레젠테이션 티어 등과 같은 엔터프라이즈 애플리케이션 개발과 관련된 통찰력과 실제적인 경험을 공유합니다.
<전문가를 위한 스프링 5>(개정 5판)에서는 다음과 같은 내용을 배웁니다.
ㆍ 제어 역전(IoC) 및 의존성 주입(DI)
ㆍ 스프링 프레임워크 5의 새로운 기능 알아보기
ㆍ 스프링 MVC와 웹소켓(WebSocket)을 사용한 스프링 기반의 웹 애플리케이션 구축
ㆍ 스프링 WebFlux를 사용한 스프링 웹 반응형(reactive) 애플리케이션 구축
ㆍ JUnit 5를 사용한 스프링 애플리케이션 테스트
ㆍ 새로운 자바 8 람다 문법 활용
ㆍ 고급 수준의 스프링 부트를 사용해 여러 유형의 스프링 애플리케이션을 단기간에 개발하고 실행하기
자바 9의 출시 날짜가 연기됐기 때문에 스프링 5는 자바 8을 기반으로 출시됐습니다. 따라서 이 책에서 다루는 자바 9과의 상호 운용성은 정식 버전 출시 전 베타 버전을 기준으로 합니다.
이 책에서는 그레이들(Gradle) 4를 사용해 구성된 멀티 모듈 프로젝트를 제공합니다. 이 프로젝트는 Apress 공식 저장소(https://github.com/Apress/pro-spring-5)에서 가져와 사용할 수 있습니다. 그레이들이 로컬에 설치돼 있다면 README.adoc 파일의 지침에 따라 클론(clone)한 이후에 프로젝트를 빌드할 수 있습니다. 그레이들이 설치돼 있지 않다면 인텔리제이(IntelliJ) IDEA에서 그레이들 래퍼(Gradle Wrapper, https://docs.gradle.org/current/userguide/gradle_wrapper.html)를 사용해 그레이들을 다운로드하고 프로젝트를 빌드할 수 있습니다(https://docs.gradle.org/current/userguide/gradle_wrapper.html). 이 책의 마지막에 있는 부록에서 이 프로젝트의 구조 및 구성과 함께, 깃허브(GitHub)에 있는 이 책의 예제 코드를 개발하고 실행해 볼 수 있는 개발 도구와 관련된 상세 내용을 알아봅니다.
책을 쓰는 동안에 스프링 5의 새로운 릴리스 후보 버전이 발표되었고, 인텔리제이 IDEA의 새 버전이 출시되었으며, 이 책에 사용된 그레이들 및 기타 기술의 새 버전이 업데이트 됐습니다. 이 책에서는 가장 최근의 정보를 제공하면서 공식 문서와 동기화를 유지하려고 새 버전에 맞게 내용을 업그레이드했습니다. 여러 검토자가 책의 기술적 정확성을 확인했지만, 혹시라도 잘못된 부분을 발견한 경우에 editorial@apress.com으로 이메일을 보내준다면 정오표가 만들어 질 것입니다.
이 책의 예제 소스 코드는 www.apress.com/9781484228074에 접속한 후 Download Source Code 버튼을 눌러 접근할 수 있습니다. 이 코드는 지속적으로 유지보수되고, 새로운 버전의 기술과 동기화되며, 스프링을 사용하는 개발자의 추천을 기반으로 더욱더 풍부해질 것입니다. 한국어판의 예제 소스 코드는 https://github.com/gilbutitbook/006987입니다.
제가 이 책을 쓸 때 느꼈던 즐거움만큼 이 책으로 즐겁게 스프링을 배우기를 진심으로 바랍니다.
역주_번역서는 프레임워크 버전 업에 맞춰 스프링 5.1 정식 릴리스 버전 기준으로 반영했습니다. 또한, 국내 환경에 맞춰 개발 환경은 이클립스로 변경했습니다.
목차
- 1장 스프링 소개
__1.1 스프링이란?
__1.2 스프링 프로젝트
__1.3 스프링의 대안
__1.4 정리
2장 스프링 시작하기
__2.1 스프링 프레임워크 가져오기
__2.2 스프링 모듈 이해하기
__2.3 스프링 문서 사용하기 0672.4 스프링으로 Hello World 애플리케이션 만들기
__2.5 정리
3장 스프링 IoC와 DI 소개
__3.1 IoC와 DI
__3.2 IoC의 종류
__3.3 스프링의 제어 역전
__3.4 스프링의 의존성 주입
__3.5 애플리케이션 컨텍스트 구성하기
__3.6 빈에 자동와이어링하기
__3.7 빈 상속 설정하기
__3.8 정리
4장 스프링 구성 상세와 스프링 부트
__4.1 스프링이 애플리케이션 이식성에 미치는 영향
__4.2 빈 라이프사이클 관리
__4.3 빈 생성 시점에 통지 받기
__4.4 빈 소멸 시점에 통지 받기
__4.5 빈이 스프링을 알게(Spring Aware)하기
__4.6 FactoryBean 사용하기
__4.7 자바빈 PropertyEditor
__4.8 그 외의 스프링 ApplicationContext 구성 살펴보기
__4.9 리소스 접근하기
__4.10 자바 클래스를 사용한 구성
__4.11 프로파일
__4.12 Environment와 PropertySource 추상화
__4.13 JSR-330 애너테이션을 사용한 구성
__4.14 그루비를 사용한 구성
__4.15 스프링 부트
__4.16 정리
5장 스프링 AOP 소개
__5.1 AOP 개념
__5.2 AOP의 종류
__5.3 스프링의 AOP 지원
__5.4 스프링 AOP 아키텍처
__5.5 스프링의 어드바이저와 포인트컷
__5.6 프록시 이해하기
__5.7 포인트컷의 고급 활용
__5.8 인트로덕션 시작하기
__5.9 인트로덕션 정리
__5.10 AOP 프레임워크 서비스
__5.11 @AspectJ 방식 애너테이션 사용하기
__5.12 AspectJ 연동
__5.13 정리
6장 스프링 JDBC
__6.1 람다식 소개
__6.2 예제 코드에서 사용할 예제 데이터 모델
__6.3 JDBC 인프라스트럭처 살펴보기
__6.4 스프링 JDBC 인프라스트럭처
__6.5 데이터베이스 커넥션과 데이터소스
__6.6 임베디드 데이터베이스 기능
__6.7 DAO 클래스에서 DataSource 사용하기
__6.8 예외 처리
__6.9 JdbcTemplate 클래스
__6.10 ResultSetExtractor를 사용해 중첩 도메인 객체 조회하기
__6.11 JDBC 조작을 모델링하는 스프링 클래스
__6.12 MappingSqlQuery를 사용해 데이터 질의하기
__6.13 데이터 등록 및 생성된 키 조회하기
__6.14 BatchSqlUpdate를 사용하는 배치 조작
__6.15 SqlFunction으로 저장 함수 호출하기
__6.16 스프링 데이터 프로젝트의 JDBC 확장
__6.17 JDBC 사용 시 고려사항
__6.18 스프링 부트 JDBC
__6.19 정리
7장 스프링에서 하이버네이트 사용하기
__7.1 예제 코드에서 사용할 예제 데이터 모델
__7.2 하이버네이트 SessionFactory 구성
__7.3 하이버네이트 애너테이션으로 ORM 매핑하기
__7.4 하이버네이트 Session 인터페이스
__7.5 데이터 등록
__7.6 데이터 수정
__7.7 데이터 삭제
__7.8 엔터티로 테이블을 생성하도록 하이버네이트 구성하기
__7.9 메서드와 필드 중 어디에 애너테이션을 추가할 것인가?
__7.10 하이버네이트를 사용할 때 고려사항
__7.11 정리
8장 스프링에서 JPA2로 데이터 액세스하기
__8.1 JPA 2.1 소개
__8.2 JPA로 데이터베이스 조작하기
__8.3 생성자 표현식을 사용한 커스텀 결과 타입 쿼리
__8.4 네이티브 쿼리 사용하기
__8.5 JPA 2 크라이티리어 API로 크라이티리어 쿼리 사용하기
__8.6 스프링 데이터 JPA 소개
__8.7 JpaRepository 사용하기
__8.8 스프링 데이터 JPA로 커스텀 쿼리 사용하기
__8.9 하이버네이트 엔버스로 엔터티 버전 관리하기
__8.10 스프링 부트 JPA
__8.11 JPA를 사용할 때 고려사항
__8.12 정리
9장 트랜잭션 관리
__9.1 스프링 트랜잭션 추상화 레이어 알아보기
__9.2 PlatformTransactionManager 구현체
__9.3 트랜잭션 프로퍼티 살펴보기
__9.4 예제 코드를 위한 데이터 모델과 인프라
__9.5 프로그래밍으로 트랜잭션 사용하기
__9.6 스프링과 글로벌 트랜잭션
__9.7 정리
10장 타입 변환과 포매팅을 사용해 유효성 검증하기
__10.1 의존성
__10.2 스프링 타입 변환 시스템
__10.3 스프링 타입 변환 소개
__10.4 스프링에서 필드 포매팅하기
__10.5 스프링에서 유효성 검증
__10.6 사용자 정의 검증에 @AssertTrue 사용하기
__10.7 사용자 정의 검증에서 고려사항
__10.8 어떤 유효성 검증 API를 사용할지 결정하기
__10.9 정리
11장 태스크 스케줄링
__11.1 태스크 스케줄링 예제에 필요한 의존성
__11.2 스프링의 태스크 스케줄링
__11.3 스프링에서 태스크 실행
__11.4 정리
12장 스프링 리모팅 사용하기
__12.1 예제 데이터 모델 사용하기
__12.2 JPA 백엔드에 필요한 의존성 추가
__12.3 SingerService 구현 및 구성하기
__12.4 스프링에서 JMS 사용하기
__12.5 스프링 부트 Artemis 스타터
__12.6 스프링에서 RESTful-WS 사용하기
__12.7 Castor XML 구성하기
__12.8 스프링 부트를 사용하는 스프링 RESTful-WS
__12.9 스프링에서 AMQP 사용하기
__12.10 정리
13장 스프링 테스트
__13.1 테스트 범주 소개
__13.2 스프링 테스트 애너테이션 사용하기
__13.3 로직 단위 테스트 구현하기
__13.4 통합 테스트 구현하기
__13.5 프런트엔드 단위 테스트 구현하기
__13.6 정리
14장 스프링에서 스크립트 언어 사용하기
__14.1 자바에서 스크립트 언어 사용하기
__14.2 그루비 소개
__14.3 스프링에서 그루비 사용하기
__14.4 동적 언어 코드 내장하기
__14.5 정리
15장 애플리케이션 모니터링
__15.1 스프링에서의 JMX 지원
__15.2 스프링 빈을 JMX로 내보내기
__15.3 자바 VisualVM으로 JMX 모니터링하기
__15.4 하이버네이트 통계 정보 모니터링
__15.5 스프링 부트와 JMX
__15.6 정리
16장 스프링 웹 애플리케이션
__16.1 서비스 레이어 구현 예제
__16.2 SingerService 구성
__16.3 MVC 및 스프링 MVC 소개
__16.4 스프링 MVC 프로젝트 구조 이해하기
__16.5 국제화(i18n)
__16.6 테마와 템플릿 사용하기
__16.7 아파치 타일즈를 사용한 뷰 템플릿
__16.8 스프링 MVC에서 타일즈 구성
__16.9 가수 정보 뷰의 구현
__16.10 제이쿼리와 제이쿼리 UI 사용하기
__16.11 파일 업로드 처리
__16.12 스프링 시큐리티를 사용한 웹 애플리케이션 보안
__16.13 스프링 부트로 스프링 웹 애플리케이션 생성하기
__16.14 타임리프 뷰 생성하기
__16.15 타임리프 확장 기능 사용하기
__16.16 정리
17장 웹소켓
__17.1 웹소켓 소개
__17.2 스프링에서 웹소켓 사용하기
__17.3 웹소켓 API 사용하기
__17.4 STOMP로 메시지 전달하기
__17.5 정리
18장 스프링 프로젝트: 배치, 인티그레이션, XD, 그리고 기타
__18.1 스프링 배치
__18.2 JSR-352
__18.4 스프링 인티그레이션
__18.5 스프링 XD
__18.6 스프링 프레임워크의 5가지 주목할 만한 기능
__18.7 정리
부록 A 개발 환경 구성하기
A.1 pro-spring-5 프로젝트 소개
A.2 그레이들 구성 이해하기
A.3 pro-spring-5 프로젝트 내려받기
A.4 빌드 및 트러블슈팅
A.5 아파치 톰캣에 애플리케이션 배포
출판사 서평
[이 책의 내용]
ㆍ 스프링 IoC와 DI
ㆍ 스프링 구성과 스프링 부트
ㆍ 스프링 AOP
ㆍ 스프링 JDBC
ㆍ 하이버네이트
ㆍ JPA2
ㆍ 트랜잭션 관리
ㆍ 스프링 타입 변환 시스템
ㆍ 태스크 스케줄링
ㆍ 스프링 리모팅
ㆍ 스프링 테스트
ㆍ 스프링과 스크립트 언어
ㆍ 애플리케이션 모니터링
ㆍ 스프링 MVC
ㆍ 웹소켓
ㆍ 스프링 프로젝트
[예제 코드]
ㆍ 길벗 깃허브 저장소: https://github.com/gilbutITbook/006987
ㆍ 원서 소스 코드: https://github.com/Apress/pro-spring-5
기본정보
ISBN | 9791160508864 | ||
---|---|---|---|
발행(출시)일자 | 2019년 09월 17일 | ||
쪽수 | 1200쪽 | ||
크기 |
183 * 234
* 51
mm
/ 1891 g
|
||
총권수 | 1권 | ||
원서명/저자명 | Pro Spring 5/Cosmina, Iuliana |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립