Thumbnail
BEST
개발 · 프로그래밍 백엔드

생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현 대시보드

(4.6)
24개의 수강평 ∙  324명의 수강생

38,500원

지식공유자: 구파고
총 38개 수업 (6시간 38분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

초급자를 위해 준비한
[백엔드, 웹 개발] 강의입니다.

프로젝트 시작을 위한 전반적인 설정을 구현하고 템플릿 프로젝트로 등록하여 생산성을 극대화할 수 있습니다.

✍️
이런 걸
배워요!
패키지 구조 설계
CORS 설정
JWT 인증
소셜 로그인(카카오)
전역 에러 처리
API 문서화 (Swagger)
XSS(크로스 사이트 스크립팅) 방어
깃허브 template project 등록


나만의 달팽이집 만들기!
👨‍💻

새로운 프로젝트를 만들어야 할 때 프로젝트를 시작하기 위한 전반적인 설정은 어떻게 해야 할지, 패키지 구조는 어떻게 잡아야 하는지, 누군가 나 대신 개발을 바로 할 수 있게 프로젝트 설정을 해주었으면 좋겠다고 생각해 보신 적 있으신가요? 만약 기존에 다른 프로젝트를 할 때 작성한 코드가 있으시다면 새로운 프로젝트를 진행할 때 기존에 만들어둔 로직들을 [CTRL+C], [CTRL+V]로 복사하는 자신의 모습을 발견하셨을 수도 있습니다.

새로운 프로젝트를 시작할 때 필요한 설정들과 항상 공통으로 들어가는 기능들은 미리 구현을 하여 템플릿 프로젝트로 만들어놓고 새로운 프로젝트를 시작할 때 템플릿 프로젝트 기반으로 시작을 한다면 프로젝트 시작과 동시에 해당 프로젝트에서 필요한 API들만 개발하면 생산성을 극대화할 수 있다는 생각이 들었습니다. 저는 이러한 과정을 자신만의 달팽이집을 만드는 과정이라고 말합니다. 이 강의를 통해서 기본적인 달팽이집을 만들고 앞으로 프로젝트를 하면서 유용한 기능과 설정, 라이브러리들을 하나씩 추가해나가는 것이죠. 달팽이집의 내부를 계속해서 리모델링하는 것입니다. 달팽이집은 저와 함께 성장을 하는 것이죠!

또한 입사를 하고 나면 어느 정도 설정이 된 프로젝트를 유지 보수하는 경우가 많은데 이번 강의를 들으면 "전반적으로 프로젝트가 이렇게 구성이 되어있겠구나!" 라고 이해를 하실 수 있을 것입니다. 만약 신규 프로젝트를 처음부터 구축하게 되더라도 초기 세팅부터 개발까지 무리 없이 해나가는 자신을 발견할 수 있을겁니다. 


이런 분들에게 추천해요 👀

API 서버를 만들 때 프로젝트
전반의 설정을 알고싶은 분

템플릿 기본 틀을 잡고 나만의
프로젝트를 발전하고 싶은 분

API 서버에서 JWT 기반 소셜
로그인을 구현하고 싶은 분


이 강의만의 특징 ✨

  • 최대한 실무지향적으로 강의를 제작하였고, 강의를 듣고 따라 하신다면 각종 설정 및 프로젝트 구조를 잡는데 자신감이 붙을 것입니다.
  • 설정을 진행하기 전에 해당 설정에 대한 간단한 개념을 설명드리고 진행합니다.
  • 자세한 설명을 위해서 100페이지 가까이 되는 강의 자료를 제공해 드립니다.


학습할 내용 ✏️

CORS에 대해서 알아보며 다른 origin에서도
API 호출이 가능하도록 설정을 진행합니다.

API를 수행하다가 예외가 발생할 경우 각각마다
예외 처리를 하는 게 아니라
전역적으로
예외를 처리할 수 있도록 처리하는 법을 배웁니다.

카카오 개발자 센터에서 제공하는 문서를 보며 카카오 토큰 발급을 진행합니다.

문서를 기반으로 API를 구현하는 과정을 강의를 통해 익히실 수 있습니다.

발급받은 카카오의 ACCESS TOKEN을 이용하여
소셜 로그인을 구현하고

저희가 만드는 API에서 사용할 JWT를 발급합니다.

개발한 API들을 Swagger를
이용하여 문서 자동화를 진행합니다.

웹 보안의 가장 기초인 XSS(크로스 사이트 스크립팅)를
방어하기 위한 설정을 추가합니다.

구현한 템플릿 프로젝트를 깃허브에서
Template Repository로 등록하여

새로운 프로젝트를 시작할 때
해당 템플릿 기반으로 프로젝트를 새로 만들어봅니다.

 

강의 소리가 작게 들린다는 의견이 있어서 가능하면 이어폰으로 청취 부탁드립니다.


Q&A 💬

Q. Spring Data JPA를 사용을 안해봤는데 강의를 들어도 될까요?

Spring Data JPA 기반으로 엔티티 설계, 지연 로딩, 변경 감지, 쿼리 메소드가 무엇인지 정도에 대한 기본적인 지식이 있으셔야 강의를 수월하게 들으실 수 있습니다.

Q. 스프링에 대해서 자세히 모르는데 강의를 들어도 괜찮을까요?

스프링 자체에 대한 경험이 없다면 강의를 듣기가 힘드실 것으로 예상됩니다. 스프링 기반으로 API를 만들어보신 경험이 있으시다면 수월하게 강의를 들으실 수 있습니다.


지식공유자 소개 ✒️

안녕하세요! 현재 이커머스 기업에서 일하고 있는 개발자입니다. 2022년 4~5월 동안 "멋쟁이 사자 X 이스트소프트" 익스턴십 메인 강사로 활동하였고, 2021년 9월에 "스프링 부트 쇼핑몰 프로젝트 with JPA"라는 책을 출판하였습니다.

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
기본적인 프로젝트 세팅에 대해서 배워보고 싶으신 분
프로젝트를 시작하기 위한 기본적인 공통기능을 미리 구현하고 싶으신 분
평소에 사이드 프로젝트를 많이 하시는 분
📚
선수 지식,
필요할까요?
스프링 부트
Spring Data JPA
Java
깃허브 사용경험(소스코드 업로드)
Spring

안녕하세요
구파고 입니다.
구파고의 썸네일
커리큘럼 총 38 개 ˙ 6시간 38분의 수업
이 강의는 영상, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. 소개
강의 소개 미리보기 01:53
강의 소스 코드
강의 자료
섹션 1. 프로젝트 생성
섹션 2. 패키지 구조 설계
섹션 3. API 서버 상태 체크
Health Check API 05:39
섹션 4. CORS 설정
CORS (1) - 설정 미리보기 08:25
CORS (2) - preflight 05:19
섹션 5. yml 설정
yml 설정 (1) 10:19
yml 설정 (2) 06:00
yml 설정 (3) 04:02
섹션 6. 전역 에러 처리
전역 에러 처리 (1) 13:14
전역 에러 처리 (2) 13:55
섹션 7. JPA Auditing 설정
JPA Auditing 설정 04:57
섹션 8. Spring Cloud OpenFeign
Spring Cloud OpenFeign (1) 14:51
Spring Cloud OpenFeign (2) 08:49
섹션 9. JWT 기반 인증 구현
JWT 소개 미리보기 05:24
카카오 토큰 발급 구현 (1) - Authorization Code 발급 15:07
카카오 토큰 발급 구현 (2) - 토큰 받기 09:19
소셜 로그인 (1) - 회원 엔티티 설계 12:47
소셜 로그인 (2) - TokenManager 구현 24:21
소셜 로그인 (3) - TokenManager 구현 확인 09:52
소셜 로그인 (4) - 소셜 로그인 구조 설계 22:04
소셜 로그인 (5) - 카카오 회원 정보 조회 25:06
소셜 로그인 (6) - 회원 가입 및 JWT 반환 16:07
Access Token 재발급 미리보기 15:43
로그아웃 13:48
인증 인터셉터 구현 (1) 06:43
인증 인터셉터 구현 (2) 09:10
MemberInfoArgumentResolver 구현 11:17
인가 인터셉터 구현 09:03
yml 암호화 11:11
섹션 10. API 문서화
API 문서화 (1) - Swagger 설정 19:59
API 문서화 (2) - Swagger를 이용한 API 문서화 24:27
섹션 11. XSS
XSS 방어 (1) 10:54
XSS 방어 (2) 09:00
섹션 12. Github Template Project 등록
Github Template Project 등록 07:14
마무리 00:41
강의 게시일 : 2022년 08월 24일 (마지막 업데이트일 : 2022년 08월 24일)
수강평 총 24개
수강생분들이 직접 작성하신 수강평입니다.
4.6
24개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
Bruce Han thumbnail
3
스프링부트 쇼핑몰 JPA 책부터 강의까지 잘 봤습니다! 다만, 목소리가 잡음과 함께 작게 들리고, 화질이 낮습니다. IDE에 있는 코드가 흐리게 보여요 둘만 빼면 이미 좋은 강의입니다😁 그리고 이건 좀 개인적인 부분이긴 한데요. 쇼핑몰 JPA 책에서 로그인 부분 세션이 아닌 JWT(소셜 로그인이 아닌 그냥 OAuth)로 바꾸려고 하는데, 세션에서 어떻게 바꿔야할지 감이 잘 안잡히네요 멘토링이나 혹은 좀 도움 받을 수 있는 방법이 있을까요
2022-09-01
지식공유자 구파고
안녕하세요 책부터 강의까지 들어주셔서 감사합니다! 제가 강의를 처음 녹화하는거라 음질이나 주변 소리같은 것들을 신경쓴다고 썼는데 많이 미숙했었던거 같습니다 ㅠ 다음번에 강의를 만들게 되면 더 신경써서 만들도록 하겠습니다. JPA 쇼핑몰 책관련해서는 백견불여일타카페(https://cafe.naver.com/codefirst) 질의 응답 게시판에 게시글 남겨주시면 쪽지 드리도록 하겠습니다.
2022-09-01
최종민 thumbnail
5
진짜 이런 강의가 너무 필요했는데... Spring Boot 3.x 버전 으로 업데이트 된다면 더 흥할 것 같습니다.. ㅠ 좋은 강의 감사합니다.
2024-03-30
지식공유자 구파고
안녕하세요 종민님! 강의 좋게 봐주셔서 너무 감사합니다! 아무래도 강의 녹화를 다시하는건 힘들꺼 같아서, 스프링부트3 기준으로 바뀐점들을 최대한 업데이트 하도록 하겠습니다. 완강까지 화이팅입니다!
2024-04-06
김기원 thumbnail
4
음성에 노이즈가 많아서 강의 듣고 있을 때 조금 불편했지만 강의 내용은 도움이 되었습니다.
2023-05-15
지식공유자 구파고
안녕하세요! 음질에 노이즈가 있었는데 불편을 끼쳐드려서 죄송합니다 ㅠ 수강평 감사합니다! 다음번에는 음질 더 신경쓰도록 하겠습니다.
2023-06-23
qnfudk thumbnail
5
강의 잘 봤습니다. 내용도 좋지만 빠른 피드백이 큰 도움되었습니다. 작년에 올라온 강의지만 지금까지도 신경써주셔서 막히는부분들 금방금방 해결했습니다. 가성비가 좋은 강의입니다. 스프링과 스프링부트 아주 기초만 익히신 분들이 새로운 프로젝트를 시작하신다면 프로젝트전에 추천하고싶은 강의입니다. 기본적인 어노테이션이나 생성자, Enum, 인터페이스 등 자바 기초개념만있으시다면 설명을 듣다보면 이해가 가능하실것같아요 저도 중반부엔 흐름따라가기가 어려웠는데 계속 반복하여 설명해주셔서 강의를 다 들을때쯤엔 조금더 윤곽이 보이는 느낌이었습니다. API에 대한 기본적인 개념 및 Postman 활용, Jasypt를 이용한 yml 암호화/복호화 등 핵심인 Authorization말고도 얻어갈게많았습니다. 본 강의를 통해서 소셜로그인 인증절차에 대한 기초적인 개념을 익혔고 익힌 지식을 토대로 OAuth2를 활용한 로그인 시스템을 구현하려고합니다. 마이크나 볼륨이야기가 많아서 다소 걱정을 하긴했지만 들어보니 저에게는 옵셔널한 부분이었고.. 예민하신분들은 좀 불편할 수도 있을것같았습니다. 좋은 강의 감사합니다.
2023-04-30
지식공유자 구파고
엄청나게 상세한 강의평 감사합니다! 🤩 프로젝트 전반적인 설정이나 구조, 자주 사용하는 기능 등을 최대한 묶어서 강의를 구성하려고 하였습니다. 말씀하신대로 여기서 배운 내용을 가지고 OAuth2를 연동해서 구현해보신다면 내부 구현이 강의에서 했던것과 크게 차이 없이 설정만 추가하면 자동으로 해주겠구나 정도로 이해하고 넘어가셔도 될꺼 같습니다! 저도 들어주셔서 감사합니다.
2023-05-11
yoon thumbnail
5
SpringBoot 기반으로 OAuth, 인증, 인가, jwt, 전역 예외처리, swagger 등등 프로젝트를 진행하는 데 꼭 필요한 내용과 반복적인 내용을 자세하게 알려주셔서 많은 도움 되었습니다. 해당 강의의 강사님께서 쓰신 쇼핑몰 만들기 책도 읽어 보면서 진행해서 더욱 성장할 수 있었습니다. 감사합니다.
2023-06-18
지식공유자 구파고
안녕하세요! 쇼핑몰 책부터 강의까지 수강해주셨군요! 감사합니다 :) 강의 내용이 앞으로도 개발하시면서 도움이 많이 됐으면 좋겠습니다!
2023-06-23