장바구니 담기 close

장바구니에 상품을 담았습니다.

스타트 스프링 부트

스타트 스프링 부트

  • 구멍가게 코딩단
  • |
  • 남가람북스
  • |
  • 2017-07-20 출간
  • |
  • 584페이지
  • |
  • 182 X 233 X 27 mm /1041g
  • |
  • ISBN 9791195484577
판매가

30,000원

즉시할인가

27,000

배송비

2,300원

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
27,000

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

스프링 부트로 인해 기존의 스프링 프레임워크가 얼마나 간편해졌는지 느낌을 가지도록 하는 것이 이 책의 목표입니다. 최소한의 설정과 자동 설정을 이용해서 복잡한 설정 없이 프로젝트의 개발이 가능하게 된 점, Spring Data JPA를 이용해서 ORM을 경험해 보는 데 중점을 둡니다.

스프링 부트는 기존의 스프링 프레임워크를 이용해왔던 사용자들에게 좀 더 빠른 개발이 가능하고, 손쉽게 프로젝트를 구성할 수 있는 다양한 방식을 제공합니다. 때문에 이 책은 스프링 부트라는 이름을 달고 있기는 하지만, 책의 내용은 스프링 부트 자체보다는 Spring Data JPA나 Thymeleaf에 대한 내용이 주를 이루게 될 것입니다. 책의 내용이 이렇게 되는 이유를 굳이 변명하자면 ‘스프링 부트가 자동으로 하는 일이 너무 많아서’라고 해야 할 것 같습니다.

스프링 부트를 사용하다 보면 기존에 스프링으로 개발하던 방식에서 어려웠던 설정이나, 개발 환경 등이 하나의 선물 세트처럼 만들어졌다는 느낌이 듭니다. 스프링 개발에 필요했던 복잡한 설정이나 라이브러리 간의 충돌 등 여러 문제가 해결되어 있기도 하고, 개발 부분에 있어 설정이 자동화된 부분이 많아져서 개발 자체에 집중할 수 있는 환경을 갖추고 있습니다.

이 책에서는 다음과 같은 기술이나 라이브러리들을 이용해서 프로젝트를 생성할 것입니다.
* 데이터베이스 MySQL 5.7
* JDK 버전 1.8 이상
* 스프링 부트 버전 1.5.4/ 2.0.0(M2)

목차

PART 1 Spring Boot/Spring Data JPA 사용해보기

1. 프로젝트를 위한 준비

1.1 통합 개발 도구 설정
1.1.1 Eclipse와 스프링 플러그인
1.1.2 Spring Starter Project를 이용한 프로젝트 생성
1.1.3 생성한 프로젝트 실행
1.2 스프링 프레임워크와 스프링 부트
1.2.1 스프링 부트 내의 빈(Bean) 테스트 하기
1.3 Lombok 라이브러리 소개/설치
1.3.1 Lombok 라이브러리 설치
1.3.2 Lombok 사용해 보기
1.4 스프링 부트 프로젝트의 실행과 테스트
1.4.1 Controller의 테스트 진행

2. Spring Data JPA 맛보기

2.1 JPA 소개
2.1.1 엔티티(Entity), 엔티티 매니저(EntityManager)
2.1.2 영속 컨텍스트(Persistence Context)와 엔티티 객체
2.1.3 기존의 JPA 개발과 Spring Data JPA
2.2 Spring Data JPA를 위한 프로젝트 생성
2.2.1 프로젝트 실행과 DataSource 설정
2.2.2 엔티티 클래스 설계
2.2.3 JPA 처리를 담당하는 Repository 인터페이스 설계하기
2.2.4 작성한 엔티티 테스트

3. Spring Data JPA를이용한단순게시물의처리

3.1 쿼리 연습을 위한 준비
3.1.1 쿼리 메소드 이용하기
3.1.2 페이징 처리와 정렬
3.1.3 Page 타입
3.2 @Query를 이용하기
3.2.1 단순 게시물의 처리를 위한 @Query 작성
3.2.2 @Query의 활용
3.2.3 @Query와 Paging 처리/정렬
3.3 Querydsl을 이용한 동적 SQL의 처리
3.3.1 Querydsl을 위한 준비
3.3.2 Predicate 준비
3.3.3 Predicate 생성 및 테스트

PART 2 JPA 연관관계와 Thymeleaf

4. 다양한 연관관계 처리

4.1 연관관계 처리의 순서와 사전 설계
4.1.1 관계형 데이터베이스의 설계와 JPA
4.1.2 작성하려는 예제의 개요
4.2 회원과 프로필 사진의 관계 - 단방향 처리1
4.2.1 예제 프로젝트 작성
4.2.2 각각의 엔티티 클래스 설계
4.2.3 연관관계의 설정과 단방향/양방향
4.2.4 Repository 작성
4.2.5 테스트를 통한 검증
4.2.6 단방향의 문제와 Fetch Join
4.3 자료실과 첨부 파일의 관계 - 단방향 2
4.3.1 엔티티 클래스 작성
4.3.2 등록과 Cascading 처리
4.3.3 첨부 파일 수정과 @Modifying, @Transactional
4.3.4 첨부 파일 삭제
4.3.5 조인 처리
4.4 게시물과 댓글의 관계 - 양방향
4.4.1 연관관계의 설정
4.4.2 Repository 작성
4.4.3 테스트 코드
4.4.4 게시물의 페이징 처리와 @Query
4.4.5 게시물 조회와 인덱스

5. Thymeleaf 사용해 보기

5.1 프로젝트 설정
5.1.1 기타 환경 설정
5.2 Thymeleaf 동작 확인하기
5.2.1 컨트롤러 작성
5.2.2 템플릿 페이지 작성
5.2.3 Eclipse에 Thymeleaf 플러그인 설치하기
5.3 Thymeleaf 간단한 예제 몇 가지
5.3.1 객체를 화면에 출력하기
5.3.2 리스트를 화면에 출력하기
5.3.3 지역변수의 선언, if ~unless 제어 처리
5.3.4 인라인 스타일로 Thymeleaf 사용하기
5.4 Thymeleaf의 유틸리티 객체
5.4.1 유틸리티 객체
5.5 Thymeleaf 링크 처리
5.6 Thymeleaf의 레이아웃 기능
5.6.1 th:insert를 이용해서 페이지의 헤더와 푸터 처리하기
5.6.2 Thymeleaf layout dialect를 이용한 레이아웃 재사용하기

PART 3 웹 애플리케이션 구성

6. Spring MVC를 이용한 통합

6.1 프로젝트의 기본 구조 생성하기
6.1.1 레이아웃 분리해 두기
6.1.2 컨트롤러 생성 및 화면 확인하기
6.1.3 엔티티 클래스와 Repository 설계
6.1.4 Querydsl 설정
6.1.5 테스트 코드 작성
6.2 페이징, 검색 처리
6.2.1 Repository 페이징 테스트
6.2.2 컨트롤러의 페이징 처리
6.2.3 검색 조건의 처리
6.3 새로운 게시물 등록
6.3.1 게시물의 입력과 처리
6.4 게시물의 조회
6.4.1 컨트롤러의 처리
6.4.2 조회 페이지에서의 링크 처리
6.5 게시물의 삭제와 수정
6.5.1 게시물 수정/삭제를 위한 페이지
6.5.2 삭제 처리
6.5.3 수정 처리

7. REST 방식의 댓글 처리와 JPA 처리

7.1 프로젝트의 구성과 @RestController
7.1.1 REST 방식과 @RestController
7.2 JPA의 설계와 Repository의 설계/테스트
7.2.1 연관관계의 설정
7.2.2 ReplyRepository 추가
7.2.3 WebReplyRepository의 테스트
7.3 ReplyController의 설계
7.3.1 특정 게시물의 댓글 등록 처리
7.3.2 REST 방식 테스트
7.3.3 댓글 등록 후 목록 처리
7.3.4 댓글 삭제
7.3.5 댓글 수정
7.3.6 댓글 목록
7.4 화면에서의 댓글 처리
7.4.1 댓글 목록의 출력
7.4.2 댓글 추가
7.4.3 댓글 삭제 처리
7.4.4 댓글 수정 처리
7.5 게시물 리스트에서의 댓글 개수 처리
7.5.1 게시물과 댓글 수의 문제
7.5.2 @Query의 한계
7.5.3 사용자 정의 쿼리 - 동적으로 JPQL 처리
7.5.4 컨트롤러와 화면 처리

PART 4 스프링 웹 시큐리티 적용하기

8. Spring Web Security

8.1 예제 프로젝트 생성
8.1.1 시큐리티의 기본 설정 추가하기
8.1.2 샘플 URI 생성
8.2 회원과 권한 설계
8.2.1 도메인 클래스 설계
8.2.2 Repository 생성
8.2.3 테스트를 통한 데이터 추가/조회
8.3 단순 시큐리티 적용
8.3.1 로그인/로그아웃 관련 처리
8.4 다양한 인증 방식
8.4.1 스프링 시큐리티의 용어에 대한 이해
8.4.2 JDBC를 이용한 인증 처리
8.4.3 사용자 정의(custom) UserDetailsService 작성하기
8.4.4 MemberRepository와의 연동
8.5 화면에서 로그인한 사용자 정보 사용하기
8.5.1 Thymeleaf에서 스프링 시큐리티 처리하기
8.6 Remember-Me 인증하기
8.6.1 로그인 화면에서 ‘remember-me’ 체크박스 처리
8.6.2 SecurityConfig에서의 설정
8.6.3 remember-me를 데이터베이스에 보관하기
8.7 기타 시큐리티 설정
8.7.1 MVC에 어노테이션 처리하기
8.7.2 PasswordEncoder 사용하기
8.7.3 컨트롤러를 이용한 회원가입 처리

9. Spring MVC와 Web Security의 통합

9.1 프로젝트 구성
9.1.1 기존 프로젝트 통합
9.1.2 시큐리티 설정
9.2 게시물 작성 부분
9.2.1 게시물 작성 시 사용자 아이디 편집
9.3 게시물 조회
9.3.1 게시물 수정/삭제 버튼의 제어
9.4 게시물의 수정/삭제
9.5 Ajax의 시큐리티 처리
9.5.1 댓글 추가
9.5.2 댓글 수정/삭제
9.6 기타 설정 - 로그인 후 페이지 이동
9.6.1 인터셉터 추가
9.6.2 인터셉터 설정
9.6.3 AuthenticationSuccessHandler 추가

APPENDIX 부록

A. 오라클11g이하데이터베이스시퀀스사용하기
A.1 오라클 11g Express Edition/SQL Developer 설치
A.2 JDBC 드라이버 설정 및 JPA 테스트

B. MyBatis 이용하기

C. JSP 이용하기

D. Gradle 사용하기
D.1 Gradle Buildship 이용하기
D.2 STS Gradle 사용하기

E. MySQL 설치

F. Intellij 사용하기
F.1 Intellij 설치
F.2 Maven 스프링 부트 프로젝트 생성하기
F.2.1 Lombok의 처리와 실행
F.2.2 프로젝트 자동 종료 문제
F.2.3 Maven 환경에서의 Querydsl 설정
F.3 Gradle 스프링 부트 프로젝트 생성하기
F.3.1 Gradle 환경에서 Querydsl 설정

찾아보기

저자소개

저자 구멍가게 코딩단은 프로그래밍을 좋아하지만, 남들 앞에 나설 용기가 없는 10년차 이상 개발자, 현업 관리자, 강사들의 비공개 모임. 어린 시절 구멍가게 앞 아저씨들이 인생의 진리를 가볍게 던졌던 것처럼 프로그래밍의 오의(奧義)를 가볍게 던지고 싶은 사람들의 모임.
http://cafe.naver.com/gugucoding을 통해서 독자들과 커뮤니케이션을 하고 있으며, 스프링 외에도 여러 주제에 대한 자료를 제공하며, 저서로는 《코드로 배우는 스프링 웹 프로젝트》가 있음.

도서소개

이 책은 Spring Boot와 Spring Data JPA, Thymeleaf를 이용해서 프로젝트를 사용하는 방법에 대해 설명한다. 대상 독자는 Spring 프레임워크를 어느 정도 학습해본 초급 개발자들을 대상으로 현실적인 개발 가이드를 제공하는 것을 목표로 하고 있다. 스프링 부트는 기존의 스프링 프레임워크를 이용해왔던 사용자들에게 좀 더 빠른 개발이 가능하고, 손쉽게 프로젝트를 구성할 수 있는 다양한 방식을 제공하기 때문에 스프링 부트라는 이름을 달고 있기는 하지만, 책의 내용은 스프링 부트 자체보다는 Spring Data JPA나 Thymeleaf에 대한 내용이 주를 이루게 될 것이다.

상세이미지

스타트 스프링 부트 도서 상세이미지

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.