스크랩

구간

프로 스프링 3 스프링 프레임워크의 원리와 활용

시리즈 : 위키북스 오픈소스 & 웹 시리즈 [79]

클라렌스 호, 롭 해롭 저 | 유윤선 역 | 위키북스 | 2012년 09월

북트리

정가
$90.00
판매가
$65.61 (27%↓) 최저가 보상
적립금
$1.31 (2%P)

품절된 상품입니다.

이 책을 꼭 원하시는 고객님께서는 아래 "상품문의"를 클릭 후 구매의사를
알려주세요. 책이 확보 될 경우 연락 드리겠습니다.

북카트 바로구매 위시리스트

평점 -  ·  리뷰 0

리뷰 쓰기

ISBN : 9788998139032 / 1060쪽 188 x 250 (㎜)

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

  • 21,420
  • 23,400
  • 31,500
  • 16,200

책 소개

출판사 리뷰

출판사 서평 은 스프링에 대한 완벽 가이드이자 스프링답게 스프링 애플리케이션을 개발하는 법을 소개하는 최고의 지침서다. 이 책에서는 스프링의 다양한 요소를 폭넓게 다루며 언제 어떤 식으로 스프링 애플리케이션 개발에 접근해야 하는지 자세히 설명하고 있다. 그래서 이 책은 스프링을 처음 접하는 독자는 물론, 나름 스프링을 조금 안다고 하는 독자들도 꼭 읽어야 하는 스프링의 바이블 같은 책이다. 이 책은 단순히 스프링의 방대한 기능이나 API를 설명하는 데 그치지 않는다. 이 책에서는 왜 스프링의 설계 방식이 중요하고, 스프링답게 애플리케이션을... 은 스프링에 대한 완벽 가이드이자 스프링답게 스프링 애플리케이션을 개발하는 법을 소개하는 최고의 지침서다. 이 책에서는 스프링의 다양한 요소를 폭넓게 다루며 언제 어떤 식으로 스프링 애플리케이션 개발에 접근해야 하는지 자세히 설명하고 있다. 그래서 이 책은 스프링을 처음 접하는 독자는 물론, 나름 스프링을 조금 안다고 하는 독자들도 꼭 읽어야 하는 스프링의 바이블 같은 책이다. 이 책은 단순히 스프링의 방대한 기능이나 API를 설명하는 데 그치지 않는다. 이 책에서는 왜 스프링의 설계 방식이 중요하고, 스프링답게 애플리케이션을 설계하고 구현하는 게 이로운지 자세히 설명한다. 또 스프링이 제공하는 다양한 옵션 사이에서(이를테면 XML 설정, 애노테이션 설정, 자바 설정 등) 언제 어떤 옵션을 택하는 게 가장 적합한지 다양한 실전 사례를 통해 설명한다. 그래서 이 책을 읽다 보면 자연스럽게 스프링의 철학을 체득할 수 있고, 모범 개발 기법을 통해 애플리케이션을 개발하는 혜안을 얻을 수 있다. 또, 최신 스프링 환경에 맞게 다양한 최신 기법을 소개하는 것도 빼먹지 않는다. 예컨대 스프링 3.1에서 새로 도입된 프로필 기능을 활용해 설정을 분리하는 기법이나 서블릿 3.0 컨테이너의 멀티파트 지원 기능을 활용한 파일 업로드 기능을 활용한 예제가 이에 해당한다. 더불어 저자는 일반적으로 개발자들에게 익숙한 DAO 레이어를 그대로 사용하는 대신 JPA를 활용해 엔티티매니저를 서비스 레이어로 직접 주입하는 방식을 통해 최신 개발 기법을 설명하는 등 스프링 애플리케이션에서 불필요한 요소를 제거하고 애플리케이션을 유지보수하기 쉽게 관리하는 다양한 전략을 소개한다. 이 책에서는 각기 다른 스프링 관련 주제를 폭넓게 다루는 동시에 모든 기능을 한데 아우르는 대규모 애플리케이션의 개발도 함께 진행한다. 이 책에서 계속해서 개발하는 SpringBlog 애플리케이션은 스프링 코어, 스프링 MVC, 스프링 시큐리티, AOP를 통한 필터링, 스프링 뷰 기술(Ajax, 제이쿼리), 아파치 타일즈, 스프링 배치, 스프링 인티그레이션 등 가히 스프링의 모든 기능을 담았다고 해도 과언이 아닐 정도로 방대하다. 따라서 독자들은 각 장을 통해 스프링 관련 지식을 쌓을 수 있음은 물론 SpringBlog 예제를 통해 전체적인 맥락에서 스프링을 이해하고 각 요소가 서로 어떻게 연동되는지 한눈에 볼 수 있다. 으로 엔터프라이즈 자바 애플리케이션 개발을 마스터하자. 스프링 프레임워크의 3.1 버전을 다루는 이 책은 광범위한 스프링 레퍼런스이자 가장 앞선 엔터프라이즈 자바 애플리케이션 개발 프레임워크의 강력한 힘을 활용하게 해주는 실전 가이드다. 저자인 클라렌스 호와 롭 해롭은 스프링의 핵심 및 하이버네이트, 마이바티스, EJB과 같은 다른 선도 자바 기술과의 연동을 다룬다. 저자들은 자신들의 혜안과 실전 경험을 바탕으로 리모팅, 트랜잭션, 웹과 프레젠테이션 티어 등 다양한 엔터프라이즈 애플리케이션 개발법을 설명한다. 또 모든 기능을 갖춘 예제 애플리케이션을 통해 이 책에서 소개한 많은 기술과 기법을 적용하는 법을 보여주고 이들 기술이 어떻게 서로 연동되는지 살펴본다. ★ 이 책에서 다루는 내용 ★ ■ 제어 역전(IoC) 및 의존성 주입(DI)의 사용법 ■ 스프링의 관점 지향 프로그래밍(AOP) 사용법 및 AOP의 중요성 ■ 스프링 MVC 및 웹 플로우를 활용한 스프링 기반 웹 애플리케이션 개발법 ■ 그루비 같은 스크립트 언어를 통한 애플리케이션 기능 개선법 머리끝부터 발끝까지 복잡한 스프링 애플리케이션을 개발할 수 있는 지식으로 자신을 무장하자. 이 책은 처음으로 스프링을 배우거나 스프링 프레임워크를 거의 접한 적이 없는 숙련된 자바 개발자를 위한 책이다. 이 책은 엔터프라이즈 자바 애플리케이션 개발 또는 설계에 참여하고 있는 독자를 대상으로 한다.

저자 소개

  • 저자 : 클라렌스 호, 롭 해롭
저자 클라렌스 호는 홍콩에 위치한 소프트웨어 컨설팅 회사인 SkywideSoft Technology Limited의 자바 아키텍트다. 클라렌스는 IT 분야에서 20년 이상 여러 인하우스 애플리케이션 개발 프로젝트에서 팀 리더를 맡았으며, 클라이언트에게 엔터프라이즈 컨설팅 서비스를 제공했다. 클라렌스는 2001년부터 자바 프로그래밍을 시작했고, 2005년부터는 EJB, 스프링 프레임워크, 하이버네이트, JMS, WS 같은 기술을 사용해 JEE 애플리케이션을 설계하고 개발하는 업무를 집중적으로 담당했다. 클라렌스는 2005년부터 자바 엔터프라이즈 아키텍트로 근무하고 있다. 또한 국제 금융 기관의 컨설턴트로 근무하면서 자바 EE 아키텍처 설계, 교육, 기술 솔루션에 대한 컨설팅, 애플리케이션 개발 모범 기법에 대한 교육 등 여러 분야에서 기여하고 있다.

목차

목차
▣ 01장_스프링 소개
스프링이란?
- 제어 역전 또는 의존성 주입
- 의존성 주입의 발전 과정
- 의존성 주입을 넘어
스프링 프로젝트
- 스프링의 기원
- 스프링 커뮤니티
- Spring .NET
- 스프링소스 툴 스위트/스프링 IDE
- 스프링 시큐리티 프로젝트
- 스프링 배치 및 스프링 인티그레이션
- 그 외 많은 프로젝트
스프링의 대안
- JBoss Seam 프레임워크
- 구글 주스
- PicoContainer
- JEE 6 컨테이너
정리
▣ 02장_스프링 시작하기
스프링 프레임워크 내려받기
- 표준 배포판 내려받기
- 깃허브를 통한 스프링 체크아웃
스프링 패키징의 이해
- 스프링 모듈
- 애플리케이션에 적합한 모듈 선택
- 메이븐 저장소의 스프링 모듈
스프링 의존성 분석
예제 애플리케이션
- 스프링 예제 소스코드 내려받기
- Petclinic 애플리케이션
- Petclinic 그루비 애플리케이션
- jPetStore 애플리케이션
- 스프링 설정 기본 애플리케이션
- 스프링 작업과 스케줄링 애플리케이션
- 스프링 MVC 쇼케이스 애플리케이션
- 스프링 MVC 기본과 Ajax 애플리케이션
- 스프링 Petcare 애플리케이션
- 스프링 웹플로우 애플리케이션
스프링 문서
스프링을 활용한 'Hello World!' 출력
- 예제 'Hello World!' 애플리케이션 개발
- STS에서의 스프링 프로젝트 생성
정리
▣ 03장_예제 애플리케이션
SpringBlog 애플리케이션의 요구 조건
- 보안과 인증
- 블로그 글 보기
- 블로그 글 올리기
- 블로그 글에 댓글 달기
- 비속어 필터링하기
- 블로그 글이나 댓글에 파일 첨부하기
- 블로그 행동 오디팅하기
- RSS 피드
- XML 파일로 블로그 업로드하기
- SpringBlog의 구현
- 개발 툴과 의존성 관리
- 애플리케이션 설계
- 애플리케이션 설정 관리
- SpringBlog의 계층화된 애플리케이션 아키텍처
- 영속성 레이어의 구현
- 서비스 레이어의 구현
- AOP를 활용한 비속어 필터링
정리
▣ 04장_스프링의 IoC 및 DI 소개
제어 역전과 의존성 주입
제어 역전의 종류
- 의존성 풀
- 컨텍스트화된 의존성 룩업
- 생성자 의존성 주입
- 세터 의존성 주입
- 주입 vs. 룩업
- 세터 주입 vs. 생성자 주입
스프링의 제어 역전
스프링을 통한 의존성 주입
- 빈 및 빈팩터리
- BeanFactory 구현체
- ApplicationContext
ApplicationContext의 설정
- 스프링 설정 옵션(XML 및 자바 애노테이션)
- 스프링 컴포넌트의 선언
- 세터 주입의 활용
- 생성자 주입의 활용
- 주입 파라미터
- 메서드 주입
- 빈 이름 지정 방식의 이해
- 빈 인스턴스화 모드
의존성 리졸브
빈 자동 연결
- 자동 연결 모드
- 자동 연결을 사용할 시점
빈 상속
정리
▣ 05장_스프링 설정 상세
스프링이 애플리케이션 이식성에 미치는 영향
빈 생명주기 관리
- 빈 생성 시점에 대한 개입
- 빈 소멸에 대한 개입
빈의 스프링 인식
- BeanNameAware 인터페이스의 사용
- ApplicationContextAware 인터페이스의 사용
FactoryBean의 사용
- 커스텀 FactoryBean 예제: MessageDigestFactoryBean
- FactoryBean 직접 접근
- factory-bean 및 factory-method 어트리뷰트의 사용
자바빈 프로퍼티에디터
- 내장 프로퍼티에디터
- 커스텀 PropertyEditor의 생성
스프링 ApplicationContext 설정 살펴보기
- MessageSource를 활용한 국제화
- 단독 실행형 애플리케이션에서의 MessageSource 사용
- MessageSourceResolvable 인터페이스
- 애플리케이션 이벤트
- 리소스 접근
자바 클래스를 활용한 설정
- 자바를 활용한 ApplicationContext 설정
- 자바 설정과 XML 설정 사이의 선택
프로필
- 스프링 프로필을 사용한 예제
- 사용자 프로필에 대한 고려 사항
Environment와 PropertySource 추상화
JSR-330 애노테이션을 활용한 설정
정리
▣ 06장_스프링 AOP 소개
AOP 개념
AOP의 종류
- 정적 AOP
- 동적 AOP
- AOP 방식의 선택
스프링에서의 AOP
- AOP 연합
- AOP를 활용한 'Hello World!'
- 스프링 AOP 아키텍처
- ProxyFactory 클래스에 대한 소개
- 스프링에서의 어드바이스 생성
스프링의 어드바이저와 포인트컷
- Pointcut 인터페이스
프록시의 이해
- JDK 동적 프록시의 사용
- CGLIB 프록시의 사용
- 프록시 성능 비교
- 어떤 프록시를 사용할까?
정리
▣ 07장_스프링 AOP와 애노테이션 활용
포인트컷의 고급 활용
- 제어 흐름 포인트컷의 사용
- ComposablePointcut의 활용
- 합성 및 Pointcut 인터페이스
- 포인트컷 정리
인트로덕션의 시작
- 인트로덕션 기본
- 인트로덕션을 통한 객체 수정 감지
- 인트로덕션 정리
AOP 프레임워크 서비스
- 선언적인 AOP 설정
- ProxyFactoryBean의 사용
- aop 네임스페이스 사용
- @AspectJ 방식의 애노테이션 활용
- 선언적 스프링 AOP 설정에 대한 고려 사항
AspectJ 연동
- AspectJ 소개
- 싱글턴 애스펙트의 활용
예제 애플리케이션의 AOP
- SpringBlog의 비속어 필터링
정리
▣ 08장_스프링 JDBC 지원
예제 코드의 예제 데이터 모델
JDBC 인프라스트럭처 살펴보기
스프링 JDBC 인프라스트럭처
- 개요 및 사용 패키지
- 데이터베이스 커넥션과 데이터소스
- 임베디드 데이터베이스 지원
DAO 클래스의 데이터소스 활용
예외 처리
JdbcTemplate 클래스
- DAO 클래스에서의 JdbcTemplate- 초기화
- 단일 값을 조회하는 JdbcTemplate 클래스의 사용
- NamedParameterJdbcTemplate를 통한 네임드 파라미터의 활용
- RowMapper를 활용한 도메인 객체 조회
- ResultSetExtractor를 활용한 중첩 도메인 객체 조회
JDBC 작업을 모델링하는 스프링 클래스
- 애노테이션을 사용한 JDBC DAO 설정
- MappingSqlQuery를 활용한 데이터 쿼리
- SqlUpdate를 활용한 데이터 업데이트
- 데이터 삽입 및 생성 키 조회
- BatchSqlUpdate를 활용한 배치 작업
- SqlFunction을 활용한 저장 함수 호출
자바 설정의 활용
스프링 데이터 프로젝트 -- JDBC 확장 프로젝트
JDBC 사용에 대한 고려사항
정리
▣ 09장_하이버네이트 활용
STS를 통한 하이버네이트 유틸리티 프로젝트 생성
예제 코드에 사용할 예제 데이터
하이버네이트 SessionFactory 설정
하이버네이트 애노테이션을 활용한 ORM 매핑
- 간단한 매핑
- 일대다 매핑
- 다대다 매핑
하이버네이트 Session 인터페이스
하이버네이트를 활용한 데이터베이스 작업
- 하이버네이트 쿼리 언어를 활용한 데이터 쿼리
- 데이터 삽입
- 데이터 업데이트
- 데이터 삭제
하이버네이트 사용에 대한 고려 사항
정리
▣ 10장_JPA2를 활용한 데이터 접근
JPA 2 소개
- STS에서의 스프링 JPA 유틸리티 프로젝트 생성
- 예제 코드의 예제 데이터
- JPA EntityManagerFactory의 설정
- JPA 애노테이션을 활용한 ORM 매핑
- DAO 레이어의 제거
- 서비스 레이어 클래스로의 EntityManager 주입
JPA를 활용한 데이터 작업
- 자바 영속성 쿼리 언어를 활용한 데이터 쿼리
- 데이터 삽입
- 데이터 업데이트
- 데이터 삭제
- 네이티브 쿼

top