스프링 부트 3 백엔드 개발자 되기: 자바 편 pdf 다운로드를 무료로 제공합니다 실력을 갖춘 개발자로 성장하려면 시작이 중요합니다. 그래서 이 책은 무엇부터 익혀야 하는지 막막한 입문자에게 백엔드 개발의 필수 지식을 학습 로드맵 중심으로 설명합니다
관련 교재 pdf 모음
책 소개
스프링 부트 3 개발에 꼭 필요한 4대장인 JPA ORM, OAuth2 인증, AWS 배포, CI/CD를 최신 트렌드에 맞게 그리고 실무에 유용하게 알려줍니다. 모든 장 끝에는 연습문제가 수록되어 있어 배운 내용을 점검할 수 있습니다. 이번 2판에는 스프링 부트 프로젝트 진행을 위해 꼭 알아야 하는 SQL 기초와 실습, 스프링 시큐리티 업데이트, 블로그 댓글 기능 등을 추가하여 더욱 좋은 책으로 만들었습니다. 이 책이 여러분의 백엔드 개발자 여정에 든든한 나침반이 되어 줄 겁니다. 〈되기〉 시리즈 소개〈되기〉 시리즈는 이름 그대로 IT 분야에서 성장하려는 여러분을 위해 준비한 책입니다. 엄선된 IT 기술들을 로드맵과 함께 제시하고, 실무 중심으로 공부할 수 있도록 안내합니다. 여러분이 해당 분야에서 실무자로 빠르게 성장할 수 있도록 지원하겠습니다. 실무에 유용한 기술로 익히세요기술은 빠르게 변합니다. 지금은 대세이지만 지는 기술, 아직은 미약하지만 뜨는 기술이 있습니다. 트렌드가 변하는 데는 그럴 만한 이유가 있습니다. 반면 기본은 트렌드와 무관하게 변하지 않습니다. 그래서 기본은 탄탄하게, 기술셋은 트렌디하면서 실무에 유용하게 설명했습니다. 경험을 녹인 고퀄리티 코드를 접하세요인터넷을 검색하면 손쉽게 동작하는 코드를 얻을 수 있습니다. 그렇게 얻은 코드 대부분은 기능이 부족하거나 서비스가 성장하면서 다양한 이슈를 낳게 됩니다. 이 책에 들어 있는 코드는 그런 인터넷 복붙 코드가 아닙니다. 필자가 서비스를 개발하고 운영한 경험을 녹인 코드입니다. 인터넷을 검색하면 블로그 개발을 위한 코드가 많습니다. 하지만 제대로 JWT, OAuth2를 녹여내거나 CI/CD까지 고려한 개발을 잘 엮어준 책은 없습니다. 이 책에서는 제대로 동작하는 블로그 기능부터 JWT, OAuth2를 위한 보안, 향후 실무에서 경험할 CI/CD까지 만나볼 수 있습니다.
스프링 부트 3 백엔드 개발자 자바
목차[레벨 1 | 스프링 부트로 백엔드 입문하기]
00장 개발 환경 구축하기
_0.0 그림으로 이해하는 프로젝트
_0.1 인텔리제이 설치 및 설정
__윈도우에 인텔리제이 설치하기
__macOS에 인텔리제이 설치하기
__프로젝트 생성하기
_0.2 스프링 부트 3 프로젝트 만들기
_0.3 포스트맨 설치하기
_0.4 예제 코드 저장소 위치와 저자에게 깃허브 이슈로 질문하기
_0.5 개발 편의와 속도를 확 올려줄 꿀 단축키
01장 자바 백엔드 개발자가 알아두면 좋은 지식
_1.1 서버와 클라이언트
__클라이언트란?
__서버란?
_1.2 데이터베이스
__RDB란?
__SQL이란?
__NoSQL이란?
_1.3 아이피와 포트
_1.4 라이브러리와 프레임워크
__라이브러리란?
__프레임워크란?
_1.5 백엔드 개발자의 업무
_1.6 백엔드 프로그래밍 언어
_1.7 자바 애너테이션
02장 스프링 부트 3 시작하기
_2.0 그림으로 이해하는 프로젝트
_2.1 스프링과 스프링 부트
__스프링의 등장
__스프링을 더 쉽게 만들어주는 스프링 부트
_2.2 스프링 콘셉트 공부하기
__제어의 역전과 의존성 주입
__빈과 스프링 컨테이너
__관점 지향 프로그래밍
__이식 가능한 서비스 추상화
_2.3 스프링 부트 3 둘러보기
__첫 번째 스프링 부트 3 예제 만들기
__스프링 부트 스타터 살펴보기
__자동 구성
__스프링 부트 3와 자바 버전
_2.4 스프링 부트 3 코드 이해하기
__@SpringBootApplication 이해하기
__테스트 컨트롤러 살펴보기
__학습 마무리
__연습문제
03장 스프링 부트 3 구조 이해하기
_3.0 그림으로 이해하는 프로젝트
_3.1 스프링 부트 3 구조 살펴보기
__카페와 빵집으로 이해하는 계층
__스프링 부트 프로젝트 디렉터리 구성하며 살펴보기
__main 디렉터리 구성하기
_3.2 스프링 부트 3 프로젝트 발전시키기
__build.gradle에 의존성 추가하기
__프레젠테이션, 서비스, 퍼시스턴스 계층 만들기
__임포트 오류 처리하기
__작동 확인하기
_3.3 스프링 부트 요청-응답 과정 한 방에 이해하기
__학습 마무리
__연습문제
04장 스프링 부트 3와 테스트
_4.1 테스트 코드 개념 익히기
__테스트 코드란?
_4.2 스프링 부트 3와 테스트
__JUnit이란?
_4.3 제대로 테스트 코드 작성해보기
__테스트 코드 패턴 연습하기
__학습 마무리
__연습문제
05장 데이터베이스 조작이 편해지는 ORM
_5.0 그림으로 이해하는 프로젝트
_5.1 데이터베이스란?
__데이터베이스 관리자, DBMS
__SQL 문으로 데이터베이스 조작하는 연습하기
_5.2 ORM이란?
_5.3 JPA와 하이버네이트?
__엔티티 매니저란?
__영속성 컨텍스트란?
__엔티티의 상태
_5.4 스프링 데이터와 스프링 데이터 JPA
__스프링 데이터 JPA란?
__스프링 데이터 JPA에서 제공하는 메서드 사용해보기
_5.5 예제 코드 살펴보기
__학습 마무리
__연습문제
[레벨 2 | 스프링 부트 3로 블로그 제대로 만들기]
[프로젝트] 06장 블로그 기획하고 API 만들기
_6.0 그림으로 이해하는 프로젝트
_6.1 사전 지식 : API와 REST API
__식당으로 알아보는 API
__웹의 장점을 최대한 활용하는 REST API
6.2 블로그 개발을 위한 엔티티 구성하기
__프로젝트 준비하기
__엔티티 구성하기
__리포지터리 만들기
6.3 블로그 글 작성을 위한 API 구현하기
__서비스 메서드 코드 작성하기
__컨트롤러 메서드 코드 작성하기
__API 실행 테스트하기
__반복 작업을 줄여 줄 테스트 코드 작성하기
6.4 블로그 글 목록 조회를 위한 API 구현하기
__서비스 메서드 코드 작성하기
__컨트롤러 메서드 코드 작성하기
__실행 테스트하기
__테스트 코드 작성하기
6.5 블로그 글 조회 API 구현하기
__서비스 메서드 코드 작성하기
__컨트롤러 메서드 코드 작성하기
__테스트 코드 작성하기
6.6 블로그 글 삭제 API 구현하기
__서비스 메서드 코드 작성하기
__컨트롤러 메서드 코드 작성하기
__실행 테스트하기
__테스트 코드 작성하기
6.7 블로그 글 수정 API 구현하기
__서비스 메서드 코드 작성하기
__컨트롤러 메서드 코드 작성하기
__실행 테스트하기
__테스트 코드 작성하기
__학습 마무리
__연습문제
[프로젝트] 07장 블로그 화면 구성하기
_7.1 사전 지식 : 타임리프
__템플릿 엔진 개념 잡기
__타임리프 사용을 위한 의존성 추가하기
__타임리프 문법 익히기용 컨트롤러 작성하기
__뷰 작성하기
__뷰 테스트하기
_7.2 블로그 글 목록 뷰 구현하기
__컨트롤러 메서드 작성하기
__HTML 뷰 만들고 테스트하기
_7.3 블로그 글 뷰 구현하기
__엔티티에 생성, 수정 시간 추가하기
__컨트롤러 메서드 작성하기
__HTML 뷰 만들기
__실행 테스트하기
_7.4 삭제 기능 추가하기
__삭제 기능 코드 작성하기
__실행 테스트하기
_7.5 수정/생성 기능 추가하기
__수정/생성 뷰 컨트롤러 작성하기
__수정/생성 뷰 만들기
__실행 테스트하기
_7.6 생성 기능 마무리하기
__생성 기능 작성하기
__실행 테스트하기
__학습 마무리
__연습문제
[프로젝트] 08장 스프링 시큐리티로 로그인/로그아웃, 회원 가입 구현하기
_8.0 그림으로 이해하는 프로젝트
_8.1 사전 지식 : 스프링 시큐리티
_8.2 회원 도메인 만들기
__의존성 추가하기
__엔티티 만들기
__리포지터리 만들기
__서비스 메서드 코드 작성하기
_8.3 시큐리티 설정하기
_8.4 회원 가입 구현하기
__서비스 메서드 코드 작성하기
__컨트롤러 작성하기
_8.5 회원 가입, 로그인 뷰 작성하기
__뷰 컨트롤러 구현하기
__뷰 작성하기
_8.6 로그아웃 구현하기
__로그아웃 메서드 추가하기
__로그아웃 뷰 추가하기
_8.7 실행 테스트하기
__테스트를 위한 환경 변수 추가하기
__로그인, 회원 가입 실행 테스트하기
__로그아웃 실행 테스트하기
__학습 마무리
__연습문제
[프로젝트] 09장 JWT로 로그인/로그아웃 구현하기
_9.1 사전 지식 : 토큰 기반 인증
__토큰 기반 인증이란?
__JWT
_9.2 JWT 서비스 구현하기
__의존성 추가하기
__토큰 제공자 추가하기
__리프레시 토큰 도메인 구현하기
__토큰 필터 구현하기
_9.3 토큰 API 구현하기
__토큰 서비스 추가하기
__컨트롤러 추가하기
__학습 마무리
__연습문제
[프로젝트] 10장 OAuth2로 로그인/로그아웃 구현하기
_10.1 사전 지식 : OAuth
__OAuth란?
__권한 부여 코드 승인 타입이란?
__쿠키란?
_10.2 토큰 발급받기
_10.3 스프링 시큐리티로 OAuth2를 구현하고 적용하기
__의존성 추가하기
__쿠키 관리 클래스 구현하기
__OAuth2 서비스 구현하기
__OAuth2 설정 파일 작성하기
__글에 글쓴이 추가하기
__OAuth 뷰 구성하기
__글 수정, 삭제, 글쓴이 확인 로직 추가하기
_10.4 OAuth2 실행 테스트하기
_10.5 테스트 코드 실패 해결하고 코드 수정하기
__학습 마무리
__연습문제
[레벨 3 | AWS와 깃허브 액션으로 배포/유지보수 편안하게 하기]
[프로젝트] 11장 AWS에 프로젝트 배포하기
_11.1 사전 지식 : AWS
__AWS란?
__AWS 서비스로 우리의 서비스 배포하기
__설정이 간편한 일래스틱 빈스토크
_11.2 AWS 계정 생성하기
_11.3 일래스틱 빈스토크로 서버 구축하기
__일래스틱 빈스토크 서비스 생성하기
__일래스틱 빈스토크에서 RDS 생성하기
__로컬에서 RDS 연결하기
_11.4 일래스틱 빈스토크에 우리의 서비스 배포하기
__애플리케이션 배포하기
__OAuth 서비스에 승인된 URI 추가하기
__학습 마무리
__연습문제
[프로젝트] 12장 CI/CD 도입하기
_12.1 사전 지식 : CI/CD
__CI/CD란?
__깃과 깃허브
_12.2 깃허브 액션 사용하기
__깃허브 리포지터리 생성하고 코드 푸시하기
__깃허브 액션 스크립트 작성하기, CI
__깃허브 액션 스크립트 작성하기, CD
__학습 마무리
__연습문제
부록 A 값 검증 가이드
부록 B 예외 처리 가이드
부록 C 디버깅 가이드
부록 D 댓글 기능 추가 가이드