새로운 프로젝트를 만들어야 할 때 프로젝트를 시작하기 위한 전반적인 설정은 어떻게 해야 할지, 패키지 구조는 어떻게 잡아야 하는지, 누군가 나 대신 개발을 바로 할 수 있게 프로젝트 설정을 해주었으면 좋겠다고 생각해 보신 적 있으신가요? 만약 기존에 다른 프로젝트를 할 때 작성한 코드가 있으시다면 새로운 프로젝트를 진행할 때 기존에 만들어둔 로직들을 [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"라는 책을 출판하였습니다.
Xin chào Jongmin! Cảm ơn bạn rất nhiều vì đã yêu thích bài giảng! Mình nghĩ sẽ khó để ghi lại bài giảng nên mình sẽ cố gắng cập nhật những thay đổi dựa trên Spring Boot 3 nhiều nhất có thể. Chiến đấu cho đến khi bạn đạt đến đích!
Tôi rất thích mọi thứ từ cuốn sách JPA của trung tâm mua sắm Spring Boot cho đến các bài giảng!
Tuy nhiên, giọng nói có vẻ nhỏ, nhiễu và chất lượng hình ảnh thấp. Mã trong IDE xuất hiện mờ
Ngoài hai điều này ra thì đây đã là một bài giảng hay rồi😁
Và điều này hơi cá nhân. Trong sách JPA của trung tâm mua sắm, tôi đang cố gắng thay đổi phần đăng nhập từ phiên sang JWT (chỉ OAuth, không phải đăng nhập mạng xã hội), nhưng tôi không chắc chắn cách thay đổi nó trong phiên.
Có cách nào để được tư vấn hoặc giúp đỡ không?
Xin chào, cảm ơn bạn đã lắng nghe mọi thứ từ cuốn sách đến bài giảng! Đây là lần đầu tiên tôi ghi âm bài giảng nên tôi viết rằng tôi chú ý đến những thứ như chất lượng âm thanh và âm thanh xung quanh, nhưng tôi nghĩ mình còn rất non nớt. Lần sau khi giảng bài, tôi sẽ chú ý hơn. Về sách tại trung tâm mua sắm JPA, vui lòng để lại bài đăng trên bảng tin hỏi đáp của Hundred-Knowing-Yeo-I-Ta Cafe (https://cafe.naver.com/codefirst) và chúng tôi sẽ gửi tin nhắn cho bạn.
Đó là một khóa học tiết kiệm chi phí và nội dung mang tính thông tin nên tôi đã học được rất nhiều điều.
Có nhiều bài giảng đắt giá hơn chỉ dạy bạn cách tạo API, chẳng hạn như cách xử lý lỗi, cách đặt mã thông báo jwt mà không cần bảo mật, v.v. Nhiều đến mức không thể đếm hết được, nhưng nhìn chung sơ đồ của mọi thứ, họ rất giỏi giải thích những điều mà những người mới làm quen với Spring muốn biết. Tôi nghĩ bạn đã giải quyết được vấn đề đó! Cảm ơn - Nó rất tốt để tạo các mẫu nồi hơi, nhưng tôi nghĩ nó cũng rất hữu ích cho việc học những điều cơ bản về mùa xuân ^^
Nội dung liên quan đến mùa xuân không được giải thích trực tiếp, nhưng có vẻ như Hugo đã nghiên cứu kỹ về mùa xuân và nhận được nó như một phần thưởng! Tôi rất vui vì nó đã giúp bạn rất nhiều! Cảm ơn bạn đã yêu thích nội dung bài giảng!
Nó rất hữu ích vì nó cung cấp thông tin chi tiết về nội dung cần thiết và lặp đi lặp lại để tiến hành dự án, chẳng hạn như OAuth, xác thực, ủy quyền, jwt, xử lý ngoại lệ toàn cầu, vênh vang, v.v. dựa trên SpringBoot.
Tôi đã có thể tiến bộ hơn nữa nhờ đọc cuốn sách về cách tạo một trung tâm mua sắm do người hướng dẫn khóa học viết.
Cảm ơn
Xin chào! Bạn đã lấy mọi thứ từ sách ở trung tâm mua sắm đến bài giảng! Cảm ơn bạn :) Tôi hy vọng nội dung bài giảng sẽ hữu ích cho sự phát triển trong tương lai của bạn!
Xin chào! Có tiếng ồn trong chất lượng âm thanh. Chúng tôi xin lỗi vì sự bất tiện này. Cảm ơn bạn đã đánh giá! Lần sau mình sẽ chú ý hơn đến chất lượng âm thanh.