본문 바로가기

추천 검색어

실시간 인기 검색어

실전 스프링 부트 REST API 개발 (feat. Java, MyBatis, MySQL, Maven)

향단코드 지음
온노트

2024년 11월 14일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 ePUB (34.12MB)
ISBN 9791171271993
지원기기 교보eBook App, PC e서재, 리더기
교보eBook App 듣기(TTS) 불가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.

소득공제
소장
정가 : 18,000원

쿠폰적용가 16,200

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 200원

작품소개

이 상품이 속한 분야

스프링 부트로 강력하고 확장 가능하며 안전한 REST API를 구축하기 위한 포괄적인 가이드인 '실전 스프링 부트 REST API 개발 (feat. Java, MyBatis, MySQL, Maven)'에 오신 것을 환영합니다. 이 책은 스프링 부트를 처음 사용하든, 지식을 심화하고자 하든 상관없이 효율적인 RESTful 웹 서비스를 만들고, 데이터베이스와 통합하고, 보안을 처리하고, 프로덕션용으로 배포하는 데 필요한 기술을 갖추게 해줍니다.

1장, '스프링 부트 개발 환경'에서는 스프링 부트 프로젝트를 만드는 데 필요한 필수 도구인 자바와 스프링 도구 4의 설치 과정을 안내하여 기초를 다집니다.

2장, '스프링 부트 프로젝트 만들기'에서는 첫 번째 스프링 부트 프로젝트를 만들고, 프로젝트 파일을 구성하고, 성공적으로 실행하는 단계를 다룹니다. 또한 이 장에서는 스프링 MVC와 일반적인 스프링 부트 애플리케이션의 구조를 소개합니다.

3장, '롬복'에서는 @Getter, @Setter, @Data, @Slf4j와 같은 롬복 어노테이션을 사용하여 코드를 간소화하여 자바 클래스에서 상용구 코드를 줄이는 방법을 보여 줍니다. 롬복이 어떻게 더 깔끔하고 가독성 높은 클래스를 만드는 데 도움이 되는지 배우게 됩니다.

4장, 'REST'에서는 REST API 설계 원칙을 소개하고 @RestController 어노테이션을 사용하여 REST 엔드포인트를 정의하는 방법을 보여 줍니다. 또한 API 문서화를 위해 Swagger와 같은 도구를 사용하는 방법도 배웁니다.

5장, 'JSON'에서는 JSON 데이터 유형과 @JsonProperty와 같은 어노테이션을 사용하여 JSON 데이터를 자바 객체에 매핑하는 방법을 다루면서 자바가 JSON과 함께 작동하는 방식을 설명합니다.

6장, 'jQuery Ajax 통신'에서는 $.get(), $.post(), $.ajax()와 같은 jQuery의 AJAX 메서드를 사용하여 REST API와 상호 작용하는 방법을 보여줍니다. 이 장에서는 원활한 클라이언트 측 경험을 구축하는 방법을 보여줍니다.

7장, '컨트롤러 요청 매핑'에서는 @RequestMapping, @GetMapping, @PostMapping과 같은 어노테이션을 사용하여 들어오는 HTTP 요청을 컨트롤러의 메서드에 매핑하는 방법을 설명합니다. 요청 경로와 패턴 매핑도 살펴봅니다.

8장, '컨트롤러 응답'에서는 응답 엔티티를 사용해 자바Bean 객체, 목록, 맵, 심지어 원시 바이트 데이터와 같은 다양한 응답 유형을 래핑하는 방법을 포함해 컨트롤러에서 데이터를 반환하는 다양한 방법을 다룹니다.

9장, '컨트롤러 요청 처리'에서는 다양한 유형의 컨트롤러 메서드 매개변수, 자바빈즈를 사용한 요청 처리, @JsonFormat과 같은 어노테이션으로 파일 업로드 및 날짜/시간 서식을 처리하는 방법을 안내합니다.

10장, '입력 유효성 검사'에서는 간단한 검사부터 복잡한 중첩된 자바빈 유효성 검사까지 입력 유효성 검사 메커니즘을 소개합니다. @NotNull 및 @Size와 같은 어노테이션을 사용하여 규칙을 적용하고 유효성 검사 결과를 관리하는 방법을 배웁니다.

11장, '메시지 처리'에서는 API가 여러 언어와 지역 설정을 지원하여 애플리케이션을 더욱 사용자 친화적으로 만들 수 있는 국제화 및 메시지 소스 정의를 다룹니다.

12장, '의존성 주입'에서는 스프링의 의존성 주입 메커니즘을 심층적으로 살펴보고 필드 기반, 생성자 기반, 설정자 기반 주입에 대해 설명하며 애플리케이션 구성을 간소화하는 방법을 소개합니다.

13장, '예외 처리'에서는 기본 try-catch 블록부터 @ExceptionHandler와 같은 어노테이션을 사용한 사용자 정의 예외 처리까지 스프링 부트 애플리케이션에서 예외를 처리하는 방법을 설명합니다.

14장, '인터셉터'에서는 요청이 컨트롤러에 도달하기 전에 HTTP 헤더를 로깅하거나 수정하는 등 애플리케이션에서 요청을 전처리하거나 후처리하기 위해 인터셉터를 사용하는 방법을 살펴봅니다.

15장, '데이터베이스 연결'에서는 데이터베이스 액세스를 위한 설치, 구성 및 스프링 JDBC, JPA, MyBatis의 사용을 다루는 MySQL과의 데이터베이스 통합에 대해 소개합니다.

16장, '마이바티스'에서는 매퍼 구성, 동적 SQL 사용, 엔티티 간의 관계 관리 방법을 설명하여 기존 JPA에 비해 더 많은 유연성을 제공하는 마이바티스를 심층적으로 살펴봅니다.

17장, 'REST API 서버 구현하기'에서는 @RepositoryRestController를 사용하여 RESTful 서비스를 구현하고, 엔드포인트를 사용자 정의하고, HATEOAS(애플리케이션 상태 엔진으로서의 하이퍼미디어)를 적용하는 방법을 보여줍니다.

18장, 'SPA 클라이언트'에서는 Vue.js로 SPA(단일 페이지 애플리케이션)를 빌드하고, 스프링 부트 REST API와 상호 작용하도록 구성하고, Vuex를 사용하여 사후 관리 및 상태 처리와 같은 기능을 구현하는 방법을 소개합니다.

19장, '파일 업로드'에서는 더 나은 사용자 경험을 위한 이미지 업로드, 다중 파일 업로드, 비동기 파일 업로드 처리 등 파일 업로드 기능을 구현하는 방법을 보여줍니다.

20장, 'AOP'에서는 로깅, 트랜잭션 관리 및 보안과 같은 교차적인 문제를 @Before 및 @Around와 같은 어노테이션을 통해 적용하는 방법을 설명하는 관점 지향 프로그래밍(AOP)을 소개합니다.

21장, '트랜잭션'에서는 애플리케이션에서 트랜잭션을 관리하여 데이터베이스 작업에서 데이터 무결성과 일관성을 보장하는 방법을 설명합니다.

22장, '스프링 시큐리티'에서는 스프링 시큐리티로 REST API를 보호하는 방법을 심층적으로 소개합니다. 사용자 지정 로그인 페이지 및 JDBC 기반 인증과 같은 고급 주제와 함께 인증, 권한 부여 및 사용자 세션을 구성하는 방법을 배우게 됩니다.

23장, 'JWT'에서는 토큰 생성, 유효성 검사 및 API 엔드포인트를 보호하기 위한 보안 필터 생성을 다루면서 JSON 웹 토큰(JWT)으로 REST API를 보호하는 방법에 대해 설명합니다.

24장, '실전 REST API 프로젝트'에서는 전체 프로젝트 예제와 함께 모든 내용을 정리합니다. CRUD 작업, 예외 처리, 인증을 포함하여 완전한 REST API를 만드는 방법을 배우게 됩니다.

이 책을 마치면 강력한 RESTful 서비스를 빌드, 보안 및 배포할 수 있는 스프링 부트 REST API 개발에 대한 깊은 이해를 갖게 될 것입니다. 실제 프로젝트를 해결하고 업계 모범 사례를 구현하며 확장 가능한 애플리케이션을 구축할 수 있는 지식을 갖추게 될 것입니다.

이 책은 종이책 형태가 아닌 EPUB 전자책으로 제작되어, 전통적인 페이지 레이아웃과는 다른, 웹 기반의 흐름을 취하고 있습니다. 따라서 종이책과 같은 구성에 익숙한 독자라면 다소 이질감을 느낄 수 있습니다.
1장 : 스프링 부트 개발환경
___1. 자바 설치
___2. Spring Tools 4 설치
2장 : 스프링 부트 프로젝트 생성
___1. 프로젝트 생성
___2. 프로젝트 파일 구성
___3. 프로젝트 실행
___4. 스프링 MVC
___5. 스프링 MVC 구조
___6. 스프링 스타터 프로젝트 의존성
3장 : 롬복
___1. 롬복 설치
___2. 자바빈즈
___3. 롬복 어노테이션
___4. @Getter와 @Setter
___5. @ToString
___6. @EqualsAndHashCode
___7. @NoArgsConstructor
___8. @RequiredArgsConstructor
___9. @AllArgsConstructor
___10. @Data
___11. @Builder
___12. @Slf4j
4장 : REST
___1. REST 소개
___2. REST API 설계
___3. @RestController
___4. REST API 클라이언트
___5. REST API 문서화
5장 : JSON
___1. JSON 소개
___2. JSON 자료 타입
___3. JSON과 자바 클래스
6장 : jQuery Ajax 통신
___1. $.get()
___2. $.getJSON()
___3. $.post()
___4. $.ajax()
7장 : 컨트롤러 요청 매핑
___1. 요청 경로 매핑
___2. 경로 패턴 매핑
___3. Http 메서드 매핑
___4. Headers 매핑
___5. Content Type 매핑
___6. Accept 매핑
8장 : 컨트롤러 응답
___1. void 타입
___2. String 타입
___3. 자바빈즈 클래스 타입
___4. 컬렉션 List 타입
___5. 컬렉션 Map 타입
___6. ResponseEntity<Void> 타입
___7. ResponseEntity<String> 타입
___8. ResponseEntity<자바빈즈 클래스> 타입
___9. ResponseEntity<List> 타입
___10. ResponseEntity<Map> 타입
___11. ResponseEntity<byte[]> 타입
___12. 컨트롤러 메서드 반환 값
9장 : 컨트롤러 요청 처리
___1. 컨트롤러 메서드 매개변수
___2. 요청 처리
___3. 요청 처리 자바빈즈
___4. Date 타입 처리
___5. @JsonFormat 어노테이션
___6. 파일업로드 요청 처리
10장 : 입력 유효성 검증
___1. 입력값 검증
___2. 입력값 검증 결과
___3. 입력값 검증 규칙
___4. 중첩된 자바빈즈 입력값 검증
11장 : 메시지 처리
___1. 메시지 소스 정의
___2. 국제화
12장 : 의존성 주입
___1. 의존성 주입 설명
___2. 필드 기반 의존성 주입
___3. 생성자 기반 의존성 주입
___4. 세터 기반 의존성 주입
___5. 자동 연결
13장 : 예외 처리
___1. 예외 처리
___2. 예외 상황
___3. try-catch문 예외 처리
___4. 예외 처리 어노테이션
___5. 사용자 정의 예외 처리
___6. 시스템 예외 처리
___7. 어노테이션 활용한 예외 처리
___8. 입력값 검증 결과 처리
___9. 입력값 검증 예외 처리
14장 : 인터셉터
___1. 인터셉터 설명
___2. 인터셉터 설정
___3. 인터셉터 활용
15장 : 데이터베이스 연동
___1. MySQL 설치
___2. MySQL Workbench
___3. 데이터 소스 설정
___4. CRUD 게시판 소개
___5. 스프링 JDBC
___6. JPA
___7. 마이바티스
16장 : 마이바티스
___1. 마이바티스 소개
___2. 스프링 연계
___3. 매퍼 설정
___4. _로 구분된 컬럼명 자동 매핑
___5. 별칭 적용
___6. Mapper XML 파일
___7. select
___8. insert, update and delete
___9. 기본키 취득
___10. sql
___11. Parameters
___12. Result Maps
___13. 일대다 관계 테이블 매핑
___14. 동적 SQL
___15. 동적 SQL 사용
17장 : REST API 서버 구현
___1. 스프링 부트 데이터 레스트
___2. @RepositoryRestController 사용
___3. 데이터 레스트 사용자 정의
___4. @RestController를 사용한 REST API 구현
___5. HATEOAS 적용
___6. 서버 애플리케이션 패키징
18장 : SPA 클라인언트
___1. Vue.js 소개
___2. Visual Studio Code 설치
___3. Vetur 플러그인 설치
___4. NodeJS 설치
___5. 뷰 개발자 도구 설치
___6. 게시판 소개
___7. 프로젝트 생성
___8. REST API 서버 구성
___9. 라우터 정의
___10. Vuex 상태 정의
___11. 게시글 등록
___12. 게시글 목록
___13. 게시글 상세보기
___14. 게시글 삭제
___15. 게시글 수정
19장 : 파일 업로드
___1. 파일업로드 설명
___2. 이미지 업로드
___3. 여러 개의 이미지 업로드
___4. 비동기 방식 업로드
20장 : AOP
___1. AOP 설명
___2. 포인트컷 표현식
___3. Before 어드바이스
___4. After Returning 어드바이스
___5. After Throwing 어드바이스
___6. After 어드바이스
___7. Around 어드바이스
___8. 메서드 정보 획득
21장 : 트랜잭션
___1. 트랙잭션 설명
___2. 트랙잭션 설정
___3. 트랜잭션 적용
22장 : 스프링 시큐리티
___1. 스프링 시큐리티 소개
___2. 스프링 시큐리티 설정
___3. 접근 제한 설정
___4. 로그인 처리
___5. 접근 거부 처리
___6. 사용자 정의 접근 거부 처리자
___7. 사용자 정의 로그인 페이지
___8. 로그인 성공 처리
___9. 로그아웃 처리
___10. JDBC 이용한 인증/인가 처리
___11. 사용자 테이블 이용한 인증/인가 처리
___12. UserDetailsService 재정의
___13. 스프링 시큐리티 표현식
___14. 자동 로그인
___15. 스프링 시큐리티 어노테이션
___16. 스프링 시큐리티 6로 마이그레이션하기
23장 : JWT
___1. JWT 소개
___2. JWT 생성
___3. JWT 해석
___4. RESTful 서비스 보안 설정
___5. 시큐리티 필터
___6. 인증 필터
___7. 인증 토큰 생성
___8. 요청 필터
24장 : 실전 REST API 프로젝트
___1. 프로젝트 소개
___2. 프로젝트 생성
___3. 스프링 MVC
___4. 홈 화면
___5. 메시지 처리
___6. 데이터베이스 스키마 생성
___7. 데이터베이스 테이블 생성
___8. 데이터베이스 접근 설정
___9. 코드그룹 관리
___10. 코드 관리
___11. 회원 관리
___12. 최초 관리자 생성
___13. 액세스 토큰 생성
___14. 접근 제한 설정
___15. 회원 게시판
___16. 공지사항
___17. 상품 관리
___18. 코인 충전
___19. 상품 구매
___20. 공개 자료실
___21. 예외 처리
___22. 인터셉터를 활용한 접근 로깅 처리
___23. AOP를 활용한 서비스 성능 로깅 처리
___24. 서비스 운영 관리
___25. 애플리케이션 패키징
___26. 서버 실행

작가정보

저자(글) 향단코드

다양한 응용프로그램을 개발한 경력이 있으며, 다수의 프로젝트에 참여한 경험이 있습니다.

[대표 저서]
- 실전 디자인 패턴 시리즈
- 실전 스프링 부트 웹 개발 시리즈
- 실전 스프링 부트 REST API 개발 시리즈
- 스프링 시큐리티 시리즈
- 실전 SPA 개발 시리즈
- 실전 프론트엔드(리액트, 뷰, 앵귤러) 시리즈

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 5,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다. (2024년 9월 30일부터 적용)
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 5,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다. (2024년 9월 30일부터 적용)
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품 / 선물받은 eBook / 오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    실전 스프링 부트 REST API 개발 (feat. Java, MyBatis, MySQL, Maven) 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    실전 스프링 부트 REST API 개발 (feat. Java, MyBatis, MySQL, Maven) 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    • 콘텐츠 다운로드 또는 바로보기 완료 후 리뷰 작성 시 익일 제공
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    실전 스프링 부트 REST API 개발 (feat. Java, MyBatis, MySQL, Maven)
    저자 모두보기
    저자(글)
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글바이액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글바이액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)