책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 자바
· ISBN : 9791199529830
· 쪽수 : 384쪽
· 출판일 : 2025-12-12
책 소개
목차
Part 1. 스프링 부트 온보딩 가이드북 안내
Chapter 01 온보딩 가이드의 목적과 활용법
● 1-1 가이드의 목적
○ 온보딩 가이드의 대상과 범위
○ 알고 있으면 좋은 지식
○ 필요한 개발 환경
● 1.2 개발 환경 온보딩
○ WSL2를 사용하는 이유
○ WSL2 설치하기
○ 도커 데스크탑 설치하기
○ IntelliJ IDEA 설치하기
○ JDK 21 설치하기
○ Gradle 설치하기
Chapter 02 스프링 부트란 무엇인가요?
● 2.1 스프링 부트 소개
○ 스프링 부트의 쓰임새
○ 스프링 부트의 내부 구조
○ 스프링 부트 소개
○ 스프링 부트 이해에 필요한 주요 개념
[고민상담소] 자바 개발자가 배워야 할 프레임워크
________________________________________
Part 2. 스프링 부트 기능 실습
Chapter 03 인메모리 기반의 To-Do 리스트 REST API 서버 만들기
● 3.1 프로젝트 초기화
○ WSL2 터미널 실행
○ 프로젝트 스캐폴드 생성 및 다운로드
○ IntelliJ IDEA 프로젝트 초기화
○ 애플리케이션 패키지 및 소스 코드 파일 생성하기
○ build.gradle 수정
● 3.2 인메모리 To-Do 리스트 API 서버 구현
○ To-Do 리스트 구성 요소
○ 빌드
○ 유닛 테스트
○ TestControllerTests: TodoController 유닛 테스트
○ 실행 및 Swagger-UI를 이용한 API 테스트
[고민상담소] 테스트 코드의 필요성
________________________________________
Chapter 04 JPA 기반의 To-Do 리스트 REST API 서버 개발
● 4.1 JPA 이해하기
○ JPA의 개념과 역할
○ JPA와 Hibernate의 관계
○ JPA의 주요 애노테이션
○ 스프링 데이터 JPA
○ DTO 패턴 이해하기
● 4.2 프로젝트 초기화
○ 프로젝트 복사
○ 도커를 이용한 MySQL 설치 및 설정
○ 테이블 스키마
○ settings.gradle의 프로젝트 명 변경
○ build.gradle에 JPA 및 MySQL JDBC 드라이버 의존성 추가
○ application.properties 수정
● 4.3 JPA 기반의 To-Do 리스트 API 서버 구현
○ 메인 클래스 수정하기
○ 엔티티, DTO, 매퍼 작성
○ 리포지토리 수정
○ 서비스 레이어 수정
○ REST 컨트롤러 수정
○ API 문서화를 위한 Swagger 설정
○ TodoControllerTests 수정
○ TodoServiceTests 수정
○ Test 실행
○ 실행 및 Swagger-UI를 이용한 API 테스트
[고민상담소] 스프링 부트의 데이터베이스 연동
________________________________________
Chapter 05 고급 JPA 기반의 마이크로블로그 REST API 서버 개발
● 5.1 프로젝트 초기화
○ 프로젝트 스캐폴드 생성 및 다운로드
○ IntelliJ IDEA 프로젝트 초기화
○ 패키지 및 소스 코드 파일 생성
○ 도커를 이용한 MySQL 설치 및 설정
○ build.gradle 수정
○ application.properties 수정
● 5.2 Minilog API 서버 구현
○ 스프링 전역 에러 처리기 작성하기
○ 엔티티, DTO, 매퍼 구현
○ entity, dto, util 패키지 생성하기
○ DTO 클래스 작성하기
○ 리포지토리 레이어 구현하기
○ 서비스 레이어 구현하기
○ 컨트롤러 레이어 구현하기
○ API 문서화를 위한 Swagger 설정
[고민상담소] JPA 코드 구조
________________________________________
Chapter 06 Minilog에 인증 기능 추가하기
● 6.1 JWT 인증 이해하기
○ 주요 인증 기법
○ 왜 JWT인가?
○ JWT의 구조와 메커니즘
○ JWT 인증 순서
○ 스프링 시큐리티를 이용한 JWT 인증 기능 통합
● 6.2 프로젝트 초기화
○ 프로젝트 복사
○ build.gradle에 스프링 시큐리티 의존성 추가
○ application.properties 수정
● 6.3 Minilog에 인증 기능 더하기
○ JWT 생성 및 검증 구현하기
○ GrantedAuthority를 상속하는 MinilogGrantedAuthority 정의하기
○ UserDetails 및 UserDetailsService를 각각 상속하여 MinilogUserDetails와 MinilogUserDetailsService 정의하기
○ JWT 인증 처리 구현하기
○ 엔티티, DTO 수정하기
○ 서비스 레이어 수정하기
○ 컨트롤러 레이어 수정하기
○ 빌드
● 6.4 실행 및 Swagger-UI를 이용한 API 테스트
○ minlog-jpa-with-auth 실행
○ 신규 사용자 추가
○ Minilog 로그인 및 Swagger UI 인증
○ 기타 기능 테스트
[고민상담소] 스프링 시큐리티의 소셜 로그인
________________________________________
Chapter 07 GraphQL 기반 마이크로블로그 API 서버 개발
● 7.1 GraphQL 이해하기
○ GraphQL이란?
○ GraphQL의 핵심 개념
○ GraphQL의 주요 구성 요소
○ GraphQL 동작 구조
○ GraphQL 스키마
○ 에러 처리
● 7.2 프로젝트 초기화
○ 프로젝트 복사
○ build.gradle에 graphql 의존성 추가
○ application.properties 수정
● 7.3 Minilog에 GraphQL 지원 추가하기
○ Minilog GraphQL 스키마 정의하기
○ 전역 GraphQL 예외 처리
○ SecurityConfig 수정
○ 응답 타입
○ 입력 타입
○ GraphQL 컨트롤러 추가하기
○ 빌드
● 7.4 실행 및 GraphiQL/Swaggger-UI를 이용한 API 테스트
○ minlog-graphql 실행
○ 신규 사용자 추가
○ Minilog 로그인 및 Swagger UI 인증
○ GraphQL 테스트
○ 추가 테스트
[고민상담소] GrapQL 도입 시점
________________________________________
Chapter 08 도커를 이용한 애플리케이션 패키징 및 배포
● 8.1 Docker의 기본 개념과 설치
○ Docker란 무엇인가?
○ Docker의 주요 구성 요소
● 8.2 Dockerfile 작성 및 이미지 실행 테스트
○ application.properties의 분리
○ Dockerfile 작성
○ 개발(로컬) 환경에서 컨테이너 실행 및 테스트
● 8.3 AWS에 Minilog-GraphQL 배포하기
○ AWS 액세스 키 및 비밀 액세스 키 생성 방법
○ WSL2에 AWS CLI 설치하기
○ Amazon RDS, ECR, ECS 이해하기
○ Amazon RDS MySQL 인스턴스 설정
○ 기본 보안 그룹 인바운드 속성 편집
○ application-prod.properties 수정
○ Amazon ECR에 Docker 이미지 등록
○ Amazon ECS 클러스터에 Minilog-GraphQL 앱 배포하기
● 8.4 Swaggger-UI/GraphiQL를 이용한 API 테스트
○ Swagger-UI를 이용한 API 테스트
○ GraphiQL를 이용한 GraphQL테스트
[고민상담소] AWS, Azure, GCP
저자소개
책속에서




















