000 | 00000cam c2200205 c 4500 | |
001 | 000046149580 | |
005 | 20230519154851 | |
007 | ta | |
008 | 230519s2023 ulka 001c kor | |
020 | ▼a 9791191905298 ▼g 93000 | |
035 | ▼a (KERIS)BIB000016765024 | |
040 | ▼a 244009 ▼c 244009 ▼d 211009 | |
082 | 0 4 | ▼a 005.133 ▼2 23 |
085 | ▼a 005.133 ▼2 DDCK | |
090 | ▼a 005.133 ▼b J41 2023 | |
100 | 1 | ▼a 신선영 |
245 | 1 0 | ▼a 스프링 부트 3 백엔드 개발자 되기 : ▼b 자바 편 : ▼b 현업에서 쓰는 기술로 빡세게 배워서 개발자 되기 / ▼d 신선영 지음 |
246 | 1 3 | ▼a JPA + OAuth2 + JWT + AWS와 배우는 스프링 부트 3 |
246 | 1 3 | ▼a Java 백엔드 입문자를 위한 풀 패키지 |
260 | ▼a 서울 : ▼b 골든래빗, ▼c 2023 | |
300 | ▼a 383 p. : ▼b 삽화(일부천연색) ; ▼c 24 cm | |
500 | ▼a 색인수록 | |
945 | ▼a ITMT |
소장정보
No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
---|---|---|---|---|---|---|---|
No. 1 | 소장처 중앙도서관/제2자료실(3층)/ | 청구기호 005.133 J41 2023 | 등록번호 111880567 | 도서상태 대출중 | 반납예정일 2023-10-07 | 예약 예약가능 | 서비스 |
컨텐츠정보
책소개
실력을 갖춘 개발자로 성장하려면 시작이 중요하다. 그래서 이 책은 무엇부터 익혀야 하는지 막막한 입문자에게 백엔드 개발의 필수 지식을 학습 로드맵 중심으로 설명한다. 이어서 스프링 부트 3 개발에 꼭 필요한 4대장인 JPA ORM, OAuth2 인증, AWS 배포, CI/CD를 최신 트렌드에 맞게 그리고 실무에 유용하게 알려준다. 모든 장 끝에는 연습문제가 수록되어 있어 배운 내용을 점검할 수 있다. 이 책이 여러분의 백엔드 개발자 여정에 든든한 나침반이 되어 줄 겁이다.
★ 백엔드 세상에 오신 걸 환영합니다
★ 자바 그다음 책을 소개합니다
환영합니다. 백엔드 개발자가 되고 싶은데 무엇을 어떻게 할지 모르겠는 분이라면, 잘 찾아오셨습니다. 이 책은 자바를 공부하고 나서 백엔드 입문에 필요한 내용을 알려줍니다. 입문자뿐만 아니라, 더 깊게 체계적으로 기본을 다지고 싶은 주니어 개발자와, 대규모 서비스 노하우를 담은 수준 높은 코드를 경험하고 싶은 개발자 모두에게 유용합니다.
4대장과 함께 공부하세요
자바 백엔드 환경의 핵심은 <스프링 부트>입니다. <스프링 부트>는 자바 기반의 프레임워크이므로 자바 언어의 기초 문법부터 클래스, 인터페이스와 같은 기초 지식은 반드시 알고 있어야 하며, 데이터베이스, SQL 관련 지식도 알아야 합니다. 너무 많은 기초 지식을 알아야 할 것 같아서 걱정인가요? 걱정 마세요. 이런 기초 지식들은 책에서 충분히 설명합니다. 이 책에서 <스프링 부트>와 함께 공부할 4대장을 소개합니다.
<인증(ID/PW, OAuth2, JWT)>블로그의 기초 기능인 쓰기, 수정하기, 조회하기, 삭제하기는 기본이죠. 여기서는 회원 가입부터, 로그인, 로그아웃을 다양한 방법으로 구현합니다. 단순 ID/PW 입력 방식부터 OAuth2를 활용한 구글 로그인, JWT를 활용한 토큰 인증 방식까지! 실무 활용 기법을 모두 다루면서도 점점 기능을 업그레이드하는 과정으로 구성되어 있죠.
〈되기〉 시리즈는 여러분에게 앞으로 나아갈 길을 먼저 제시합니다입문자를 위한 백엔드 로드맵을 만나보세요
저자는 백엔드 개발자로 입문할 때 겪은 난감함을 떠올렸습니다. 무엇을 어떻게 할지 몰랐습니다. 로드맵이 필요했습니다. 하지만 누구도 제대로 된 로드맵을 제공해주지 않았습니다. 그래서 저자는 입문자에게 필요한 백엔드 로드맵을 먼저 제시하고 설명합니다. 로드맵에는 수많은 기술이 나열되어 있습니다. 책 한 권에 로드맵에 있는 모든 걸 담을 수도, 한 번에 모두 배울 수도 없습니다. 이 책은 그중에서도 출발점으로 삼을 스프링 부트 3를 중심으로 함께 공부할 로드맵을 제시합니다.
실무에 유용한 기술로 익히세요
기술은 빠르게 변합니다. 지금은 대세이지만 지는 기술, 아직은 미약하지만 뜨는 기술이 있습니다. 트렌드가 변하는 데는 그럴 만한 이유가 있습니다. 반면 기본은 트렌드와 무관하게 변하지 않습니다. 그래서 기본은 탄탄하게, 기술셋은 트렌디하면서 실무에 유용하게 설명했습니다.
경험을 녹인 고퀄리티 코드를 접하세요
인터넷을 검색하면 손쉽게 동작하는 코드를 얻을 수 있습니다. 그렇게 얻은 코드 대부분은 기능이 부족하거나 서비스가 성장하면서 다양한 이슈를 낳게 됩니다. 이 책에 들어 있는 코드는 그런 인터넷 복붙 코드가 아닙니다. 필자가 서비스를 개발하고 운영한 경험을 녹인 코드입니다. 인터넷을 검색하면 블로그 개발을 위한 코드가 많습니다. 하지만 제대로 JWT, OAuth2를 녹여내거나 CI/CD까지 고려한 개발을 잘 엮어준 책은 없습니다. 이 책에서는 제대로 동작하는 블로그 기능부터 JWT, OAuth2를 위한 보안, 향후 실무에서 경험할 CI/CD까지 만나볼 수 있습니다.
이 책에서 다루는 내용을 소개합니다
이 책은 학습 흐름을 끊지 않기 위해 개발 환경부터 미리 구축해놓은 후, 스프링 부트 3를 중심으로 레벨 1부터 레벨 3로 나눠 자바 백엔드 개발 소양을 쌓아 나갑니다. 그리고 모든 장에는 연습 문제를 수록하여 공부한 내용을 확인할 수 있도록 했습니다.
_Level 1 스프링 부트로 백엔드 입문하기
스프링 부트는 도구 자체에 대한 구조와 개념을 알아야 제대로 활용할 수 있습니다. 개발 환경을 준비하며 스프링 부트의 구조와 개념을 알아본 다음, 기본 프로젝트 실습을 하며 눈과 손으로 익힙니다.
_Level 2 스프링 부트 블로그 제대로 만들기
본격적인 스프링 부트 개발을 할 시간입니다. 여기서는 나만의 블로그를 제대로 개발합니다. RESTful API 개발, 스프링 시큐리티를 활용한 보안 구성, 유지보수를 위한 테스트 코드 작성 및 실행 등 실무에 필요한 내용도 챙깁니다. 본문의 실습은 반복 패턴으로 구성되어 있습니다. 스프링 부트 개발이 처음인 사람에게는 이만큼 연습하기 좋은 구성도 없을 겁니다.
_Level 3 AWS와 깃허브 액션으로 배포/유지보수 편안하게 하기
실무에서는 개발만 하지 않습니다. 배포도 할 줄 알아야 하죠. 여기서는 AWS를 이용한 웹 애플리케이션 배포를 다룹니다. 그뿐 만이 아닙니다. 깃허브 액션을 활용한 CI/CD 과정도 경험하도록 본문을 구성했습니다.
〈되기〉 시리즈 소개
〈되기〉 시리즈는 이름 그대로 IT 분야에서 성장하려는 여러분을 위해 준비한 책입니다. 엄선된 IT 기술들을 로드맵과 함께 제시하고, 실무 중심으로 공부할 수 있도록 안내합니다. 여러분이 해당 분야에서 실무자로 빠르게 성장할 수 있도록 지원하겠습니다.
정보제공 :

저자소개
목차
[레벨 1 | 스프링 부트로 백엔드 입문하기] 00장 개발 환경 구축하기 _0.1 인텔리제이 설치 및 설정 __0.1.1 윈도우에 인텔리제이 설치하기 __0.1.2 macOS에 인텔리제이 설치하기 __0.1.3 프로젝트 생성하기 _0.2 스프링 부트 3 프로젝트 만들기 _0.3 포스트맨 설치하기 _0.4 예제 코드 저장소 위치 _0.5 개발 편의와 속도를 확 올려줄 꿀 단축키 01장 자바 백엔드 개발자가 알아두면 좋은 지식 _1.1 서버와 클라이언트 _1.2 데이터베이스 _1.3 아이피와 포트 _1.4 라이브러리와 프레임워크 _1.5 백엔드 개발자의 업무 _1.6 백엔드 프로그래밍 언어 _1.7 자바 애너테이션 02장 스프링 부트 3 시작하기 _2.1 스프링과 스프링 부트 3 __2.1.1 스프링의 등장 __2.1.2 스프링을 더 쉽게 만들어 주는 스프링 부트 _2.2 스프링 콘셉트 공부하기 __2.2.1 제어의 역전과 의존성 주입 __2.2.2 빈과 스프링 컨테이너 __2.2.3 관점 지향 프로그래밍 __2.2.4 이식 가능한 서비스 추상화 _2.3 스프링 부트 3 둘러보기 __2.3.1 첫 번째 스프링 부트 3 예제 만들기 __2.3.2 스프링 부트 스타터 살펴보기 __2.3.3 자동 구성 __2.3.4 스프링 부트 3과 자바 버전 _2.4 스프링 부트 3 코드 이해하기 __2.4.1 @SpringBootApplication 이해하기 __2.4.2 테스트 컨트롤러 살펴보기 _학습 마무리 _연습문제 03장 스프링 부트 3 구조 이해하기 _3.1 스프링 부트 3 구조 살펴보기 __3.1.1 카페와 빵집으로 이해하는 계층 __3.1.2 스프링 부트 프로젝트 디렉터리 구성하며 살펴보기 __3.1.3 main 디렉터리 구성하기 _3.2 스프링 부트 3 프로젝트 발전시키기 __3.2.1 build.gradle에 의존성 추가하기 __3.2.2 프레젠테이션, 서비스, 퍼시스턴스 계층 만들기 __3.2.5 임포트 오류 처리하기 __3.2.6 작동 확인하기 _3.3 스프링 부트 요청-응답 과정 한 방에 이해하기 _학습 마무리 _연습문제 04장 스프링 부트 3와 테스트 _4.1 테스트 코드 개념 익히기 __4.1.1 테스트 코드란? _4.2 스프링 부트 3와 테스트 __4.2.1 JUnit이란? _4.3 제대로 테스트 코드 작성해 보기 _학습 마무리 _연습문제 05장 데이터베이스 조작이 편해지는 ORM _5.1 데이터베이스란? __5.1.1 데이터베이스 관리자, DBMS _5.2 ORM이란? _5.3 JPA와 하이버네이트? __5.3.1 엔티티 매니저란? __5.3.2 영속성 컨텍스트란? __5.3.3 엔티티의 상태 _5.4 스프링 데이터와 스프링 데이터 JPA __5.4.1 스프링 데이터 JPA란? __5.4.2 스프링 데이터 JPA에서 제공하는 메서드 사용해보기 _5.5 예제 코드 살펴보기 _학습 마무리 _연습문제 [레벨 2 | 스프링 부트 3로 블로그 제대로 만들기] 06장 [Project] 블로그 기획하고 API 만들기 _6.1 사전 지식 : API와 REST API __6.1.1 식당으로 알아보는 API __6.1.2 웹의 장점을 최대한 활용하는 REST API _6.2 블로그 개발을 위한 엔티티 구성하기 __6.2.1 프로젝트 준비하기 __6.2.2 엔티티 구성하기 __6.2.3 리포지토리 만들기 _6.3 블로그 글 작성을 위한 API 구현하기 __6.3.1 서비스 메서드 코드 작성하기 __6.3.2 컨트롤러 메서드 코드 작성하기 __6.3.3 API 실행 테스트하기 __6.3.4 반복 작업을 줄여 줄 테스트 코드 작성하기 _6.4 블로그 글 목록 조회를 위한 API 구현하기 __6.4.1 서비스 메서드 코드 작성하기 __6.4.2 컨트롤러 메서드 코드 작성하기 __6.4.3 실행 테스트하기 __6.4.4 테스트 코드 작성하기 _6.5 블로그 글 조회 API 구현하기 __6.5.1 서비스 메서드 코드 작성하기 __6.5.2 컨트롤러 메서드 코드 작성하기 __6.5.3 테스트 코드 작성하기 __ _6.6 블로그 글 삭제 API 구현하기 __6.6.1 서비스 메서드 코드 작성하기 __6.6.2 컨트롤러 메서드 코드 작성하기 __6.6.3 실행 테스트하기 __6.6.4 테스트 코드 작성하기 _6.7 블로그 글 수정 API 구현하기 __6.7.1 서비스 메서드 코드 작성하기 __6.7.2 컨트롤러 메서드 코드 작성하기 __6.7.3 실행 테스트하기 __6.7.4 테스트 코드 작성하기 _학습 마무리 _연습문제 07장 [Project] 블로그 화면 구성하기 _7.1 사전 지식 : 타임리프 __7.1.1 템플릿 엔진 개념 잡기 __7.1.2 타임리프 사용을 위한 의존성 추가하기 __7.1.3 타임리프 문법 익히기용 컨트롤러 작성하기 __7.1.4 뷰 작성하기 __7.1.5 뷰 테스트하기 _7.2 블로그 글 목록 뷰 구현하기 __7.2.1 컨트롤러 메서드 작성하기 __7.2.2 HTML 뷰 만들고 테스트하기 _7.3 블로그 글 뷰 구현하기 __7.3.1 엔티티에 생성, 수정 시간 추가하기 __7.3.2 컨트롤러 메서드 작성하기 __7.3.3 HTML 뷰 만들기 __7.3.4 실행 테스트하기 _7.4 삭제 기능 추가하기 __7.4.1 삭제 기능 코드 작성하기 __7.4.2 실행 테스트하기 _7.5 수정/생성 기능 추가하기 __7.5.1 수정/생성 뷰 컨트롤러 작성하기 __7.5.2 수정/생성 뷰 만들기 __7.5.3 실행 테스트하기 _7.6 생성 기능 마무리하기 __7.7.1 생성 기능 작성하기 __7.6.2 실행 테스트하기 _학습 마무리 _연습문제 08장 [Project] 스프링 시큐리티로 로그인/로그아웃, 회원 가입 구현하기 _8.1 사전 지식 : 스프링 시큐리티 _8.2 회원 도메인 만들기 __8.2.1 의존성 추가하기 __8.2.2 엔티티 만들기 __8.2.3 리포지터리 만들기 __8.2.4 서비스 메서드 코드 작성하기 _8.3 시큐리티 설정하기 _8.4 회원 가입 구현하기 __8.4.1 서비스 메서드 코드 작성하기 __8.4.2 컨트롤러 작성하기 _8.5 회원 가입, 로그인 뷰 작성하기 __8.5.1 뷰 컨트롤러 구현하기 __8.5.2 뷰 작성하기 _8.6 로그아웃 구현하기 __8.6.1 로그아웃 메서드 추가하기 __8.6.2 로그아웃 뷰 추가 _8.7 실행 테스트하기 __8.7.1 테스트를 위한 환경 변수 추가하기 __8.7.2 로그인, 회원 가입 실행 테스트하기 __8.7.3 로그아웃 실행 테스트하기 _학습 마무리 _연습문제 09장 [Project] JWT로 로그인/로그아웃 구현하기 _9.1 사전 지식 : 토큰 기반 인증 __9.1.1 토큰 기반 인증이란? __9.1.2 JWT _9.2 JWT 서비스 구현하기 __9.2.1 의존성 추가하기 __9.2.2 토큰 제공자 추가하기 __9.2.3 리프레시 토큰 도메인 구현하기 __9.2.4 토큰 필터 구현하기 _9.3 토큰 API 구현하기 __9.3.1 토큰 서비스 추가하기 __9.3.2 컨트롤러 추가하기 _학습 마무리 _연습문제 10장 [Project] OAuth2로 로그인/로그아웃 구현하기 _10.1 사전 지식 : OAuth __10.1.1 OAuth이란? __10.1.2 권한 부여 코드 승인 타입이란? __10.1.3 쿠키? _10.2 토큰 발급받기 _10.3 스프링 시큐리티로 OAuth2 구현하고 적용하기 __10.3.1 의존성 추가하기 __10.3.2 쿠키 관리 클래스 구현하기 __10.3.3 OAuth2 서비스 구현하기 __10.3.4 OAuth2 설정 파일 작성하기 __10.3.5 글에 글쓴이 추가하기 __10.3.6 OAuth 뷰 구성하기 __10.3.7 글 수정, 삭제 본인 확인 로직 추가하기 _10.4 OAuth2 실행 테스트하기 _10.5 테스트 코드 실패 해결하고 코드 수정하기 _학습 마무리 _연습문제 [레벨 3 | AWS와 깃허브 액션으로 배포/유지보수 편안하게 하기] 11장 [Project] AWS에 프로젝트 배포하기 _11.1 사전 지식 : AWS __11.1.1 AWS란? __11.1.2 AWS 서비스로 우리의 서비스 배포하기 __11.1.3 설정이 간편한 일래스틱 빈스토크 _11.2 AWS 계정 생성하기 _11.3 일래스틱 빈스토크로 서버 구축하기 __11.3.1 일래스틱 빈스토크 서비스 생성 __11.2.2 일래스틱 빈스토크에서 RDS 생성 __11.2.3 로컬에서 RDS 연결 _11.4 일래스틱 빈스토크에 우리의 서비스 배포하기 __11.3.1 애플리케이션 배포하기 __11.3.2 OAuth 서비스에 승인된 URI 추가 _학습 마무리 _연습문제 12장 [Project] CI/CD 도입하기 _12.1 사전 지식 : CI/CD __12.1.1 CI/CD란? __12.1.2 깃과 깃허브 _12.2 깃허브 액션 사용하기 __12.2.1 깃허브 리포지터리 생성하고 코드 푸시하기 __12.2.2 깃허브 액션 스크립트 작성하기, CI __12.2.3 깃허브 액션 스크립트 작성하기, CD _학습 마무리 _연습문제 부록 A 값 검증 가이드 부록 B 예외 처리 가이드