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

스프링과 JPA 기반 웹 애플리케이션 개발 대시보드

(4.8)
105개의 수강평 ∙  1,824명의 수강생
330,000원

월 66,000원

5개월 할부 시
지식공유자: 백기선
총 96개 수업 (18시간 12분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

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

이 강좌에서 여러분은 실제로 운영 중인 서비스를 스프링, JPA 그리고 타임리프를 비롯한 여러 자바 기반의 여러 오픈 소스 기술을 사용하여 웹 애플리케이션을 개발하는 과정을 학습할 수 있습니다. 이 강좌를 충분히 학습한다면 여러분 만의 웹 서비스를 만들거나 취직에 도움이 될만한 포트폴리오를 만들 수 있을 겁니다.

✍️
이런 걸
배워요!
스프링, JPA, 타임리프를 익힐 수 있습니다.
스프링과 JPA를 사용해서 실제 웹 서비스를 개발할 수 있습니다.

🙆🏻‍♀ 스프링과 JPA 기반 웹 애플리케이션 프로그래밍 🙆🏻‍♂

이 강좌는 다양한 기술을 사용해 웹 서비스를 개발합니다.
가칭, '스터디올래'라는 스터디 모임 관리 서비스를 개발합니다.

 
여러분도 따라 만들어 보시고 자신만의 서비스 또는 취직에 사용할 포트폴리오를 만들어 보세요.


이제는 진짜로
만들어 봅시다.

실습형 강좌

이 강좌는 이론형 강좌와 달리 사용하는 기술의 원리 이해가 목적이 아닌 기능 구현을 목적으로 만들었습니다.
따라서, 이 강좌를 따라하며 학습하시면 여러분도 분명히 웹 서비스를 만들 수 있습니다.


이 강의는 스터디 모임 관리 서비스의 주요 기능을 구현합니다.


대신, 기술에 대한 충분한 이해가 따르지 않는다면 동작 원리 이해가 부족하여 문제 해결 능력, 응용 능력이 떨어질 수 있습니다.실습형 강좌에서 이론적인 지식까지 보충하기에는 분량이나 시간적으로 여유치 않으니 선수지식을 반드시 참고해 주시기 바랍니다.

 
선수지식 : 자바 / 스프링, 스프링 부트, 스프링 데이터 JPA / HTML, CSS, JavaScript

반드시 필요한 선수지식

HTML, CSS, 자바스크립트에 대한 지식을 갖추고 있어야 합니다.
본 강좌는 "웹" 애플리케이션을 개발합니다. 따라서 위 세가지 기술에 대한 이해가 없이는 본 강좌를 학습하는 것이 불가능합니다.

자바, 스프링, JPA를 학습한 경험이 있어야 합니다.

완벽히 알고 있진 않아도 괜찮지만, 처음 학습하시는 분들에게 이 강좌는 그저 따라하니까 되네? 정도로 그칠 겁니다. 의미없는 학습입니다.반드시 인터넷 강좌나 책으로 한번 쯤 학습을 해 본 개발자 또는 학생만 이 강좌를 수강하시기 바랍니다. 

이 강의에서 배우는 것들

이번 강좌는 대부분의 웹 애플리케이션이 기본으로 갖추고 있는 기능을 구현합니다.

• 회원 가입 / 로그인 / 로그아웃
• 도메인 데이터 CRUD
• 페이징 및 정렬
• 예외 처리
• 테스트

간단한 기능들이긴 하지만 진짜는 디테일에 있습니다.

회원 가입을 Account 또는 User 객체를 만들어 저장하고 끝낸다면 실전 또는 실제 웹 서비스라고 할 수 있을까요?


이메일로 회원 가입 인증 처리, 비밀 번호를 잊은 경우에 대한 처리, 로그인 시 비밀 번호가 틀린 경우 등 다양한 경우를 고려해야 합니다.

CRUD도 마찬가지로, 모든 데이터를 수정할 것인지, 일부 데이터만 수정할 것인지, 스터디에 배너 이미지를 제공하거나, 다른 연관 관계 있는 데이터를 어떻게 추가하며 삭제할 것인지를 고민해야 합니다.
조회는 가장 간단해 보이지만 사실 가장 성능에 치명적일 수 있는 기능입니다.
어떤 데이터를 가져와서 어떻게 제공하느냐 따라 애플리케이션 성능에 많은 영향을 줍니다.
강의를 통해 여러분은 성능을 고려하며 개발하는 방법도 학습할 수 있습니다


여기서 다루는 툴

인텔리J IDEA, 부트스트랩, 제이쿼리, 타임리프
스프링, 스프링 부트, 스프링 데이터 JPA, 스프링 시큐리티
JPA, QueryDSL, PostgreSQL, JUnit 5

🙋🏻‍♂️ 예상되는 질문 QnA

Q. 비전공자도 들을 수 있나요?
A. 네, 선수 지식을 갖추셨다면 가능합니다. 전공 여부는 중요하지 않습니다. 반대로 전공자여도, 자바, 스프링, JPA 그리고 HTML, CSS, 자바스크립트에 대한 학습이 부족하면 특히, 자바와 웹 기술에 대한 공부가 부족하신 분들은 수강하기 힘들 수 있습니다.

Q. 이 강의만의 특별한 장점이 있을까요?
A. 유튜브에서 개발자 고민 상담을 하며, 많은 취준생 분들이 포트폴리오를 어떻게 만들지 고민하고 있다는 사실을 알게 되었습니다. 이 강의에서 다루는 웹 서비스 수준의 포르폴리오를 이해하며 만들고 개선해 나갈 수 있는 실력을 갖춘다면 취직에 유리할 겁니다.

Q. 이 강의 소스 코드를 포트폴리오로 써도 될까요?
A. 안됩니다. 본인의 포트폴리오는 전적으로 본인이 작성해야 하며 같은 코드를 "따라서" 작성한 코드는 본인의 것이라 말하기 어려울 겁니다. 이 강의를 충분히 이해했다면 분명히 여러분 만의 웹 서비스를 개발할 수 있을 겁니다. 그리고 그 과정을 직접 겪어야 더 성장할 수 있습니다

강좌는 계속 
이어집니다.



이 강좌는 스터디올래라는 서비스를 통해 여러분에게 실전과 비슷한 다양한 경험과 학습을 제공하기 위한 시작점입니다. 이후에도 동일 서비스를 기반으로 여러 강좌를 구상해 두었으니 기대해 주시기 바랍니다.

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
포트폴리오를 만들고 있는 개발자 또는 학생
스프링 기반 자바 웹 서비스를 개발하고 싶은 개발자 또는 학생
스프링 부트, 스프링 핵심 기술, 스프링 MVC, 스프링 시큐리티, 스프링 데이터 JPA를 수강한 개발자 또는 학생
📚
선수 지식,
필요할까요?
자바
스프링, 스프링 부트, 스프링 데이터 JPA
HTML, CSS, JavaScript

안녕하세요
백기선 입니다.
백기선의 썸네일

네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.

아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.

유튜브:
'백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발

커리큘럼 총 96 개 ˙ 18시간 12분의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. 시작하기
섹션 1. 회원 가입
계정 관리 기능 미리보기 미리보기 05:00
프로젝트 만들기 06:36
계정 도메인 08:05
회원 가입 컨트롤러 14:16
회원 가입 뷰 20:37
회원 가입 폼 서브밋 검증 17:03
회원 가입 폼 서브밋 처리 11:40
회원 가입 리팩토링 및 테스트 18:42
회원 가입 패스워드 인코딩 13:00
회원 가입 인증 메일 확인 20:40
회원 가입 인증 메일 확인 테스트 및 리팩토링 09:08
회원 가입 완료 후 자동 로그인 09:58
회원 가입 메인 네비게이션 메뉴 09:32
프론트엔드 라이브러리 설정 16:40
뷰 중복 코드 제거 11:49
첫 페이지 보완 10:56
현재 인증된 사용자 정보 참조 14:56
가입 확인 이메일 재전송 07:36
로그인 로그아웃 14:41
로그인 로그아웃 테스트 11:48
로그인 기억하기 18:28
프로필 뷰 16:21
Open EntityManager (또는 Session) In View 필터 09:15
섹션 2. 계정 설정
프로필 수정 폼 미리보기 09:50
프로필 수정 처리 15:43
프로필 수정 테스트 18:45
프로필 이미지 변경 13:35
패스워드 수정 15:59
패스워드 수정 테스트 04:28
알림 설정 07:24
ModelMapper 적용 10:07
닉네임 수정 04:47
패스워드를 잊어버렸습니다. 04:45
섹션 3. 관심 주제와 지역 정보
관심 주제와 지역 정보 관리 기능 미리보기 미리보기 03:27
관심 주제 도메인 05:49
관심 주제 등록 뷰 12:55
관심 주제 등록 기능 구현 13:09
관심 주제 조회 06:57
관심 주제 삭제 04:12
관심 주제 자동완성 05:44
관심 주제 테스트 14:41
지역 도메인 13:53
지역 정보 추가 삭제 및 테스트 08:37
섹션 4. DB와 이메일 설정
PostgreSQL 설치 및 설정 07:13
인텔리J 데이터베이스 탭 07:34
SMTP 설정 08:07
EmailService 추상화 14:13
HTML 이메일 전송하기 13:14
섹션 5. 스터디
스터디 관리 기능 미리보기 미리보기 04:50
스터디 도메인 06:48
스터디 개설 25:14
스터디 조회 21:30
스터디 구성원 조회 03:15
스터디 설정 - 소개 수정 16:33
스터디 설정 - 배너 11:20
스터디 설정 - 태그/지역 17:55
스터디 설정 - 상태 변경 15:25
스터디 설정 - 경로 및 이름 수정 05:57
스터디 삭제 05:36
스터디 참여 및 탈퇴 05:02
섹션 6. 모임
모임 관리 기능 미리보기 미리보기 08:31
모임 도메인 16:48
모임 만들기 뷰 15:07
모임 만들기 폼 서브밋 16:03
모임 조회 15:42
모임 목록 조회 07:51
모임 수정 08:24
모임 취소 08:14
모임 참가 신청 및 취소 19:14
모임 참가 신청 수락, 취소 및 출석 체크 14:43
섹션 7. 패키지 및 테스트 코드 정리
패키지 구조 정리 13:17
테스트 클래스 정리 04:11
테스트 DB를 PostgreSQL로 전환 10:40
섹션 8. 알림
알림 기능 미리보기 미리보기 02:38
알림 도메인 03:57
알림 인프라 설정 21:59
스터디 개설 알림 21:36
알림 아이콘 변경 17:28
알림 목록 조회 및 삭제 10:55
스터디 변경 알림 12:55
모임 관련 알림 03:36
섹션 9. 검색 및 첫 페이지
검색 기능 미리보기 미리보기 02:16
검색 기능 구현 17:01
N+1 Select 문제 해결 15:04
페이징 적용 17:11
검색 뷰 개선 19:51
[과제1] 로그인 전 첫 페이지 08:51
[과제 2] 로그인 후 첫 페이지 19:00
섹션 10. 에러 처리 및 배포 준비
에러 핸들러 및 뷰 추가 06:34
배포시 고려할 것 16:53
강의 게시일 : 2020년 03월 16일 (마지막 업데이트일 : 2020년 03월 12일)
수강평 총 105개
수강생분들이 직접 작성하신 수강평입니다.
4.8
105개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
장현우 thumbnail
5
이전에 프로젝트를 만들면서 강의하면 더 재밌을 것 같다고 남겼던 수강생인데, 정말 이런 방식의 강의가 만들어지다니 너무 감사했습니다. 재밌게 잘 들은 것 같습니다. 감사합니다.
2020-05-03
안소현 thumbnail
5
최고의 개발자에게 1:1 과외를 받는 기분이에요 ^^ 최고!! 추천합니다
2020-05-29
김동희 thumbnail
5
항상 좋은 강의 감사합니다. 내용은 아주 만족합니다!!! 다만 기초가 부족하면 강의 중간에 뼈맞을수 있습니다. 주의하세요.
2020-03-29
방민준 thumbnail
5
스프링부트책과 스프링프레임책을 엄청 많이 읽어도 잘 적용하기 힘들고 그랬었는데 수강을 완료하니 너무 쉬운걸 어렵게 생각했더라고요... 그게 아니라 어려운걸 쉽게 설명해주셔서 그런건가?? 여튼 스프링 부트 난이도가 급하락 했습니다. 진짜 별것도 아닌걸로 내가 왜 그렇게 고생하면서 공부했는지 후회될 정도입니다. 정말 좋은강의 감사합니다.
2020-09-27
지식공유자 백기선
무언가를 만들어 보면 확실히 좀 더 감을 잡기 쉬운거 같습니다. 이번 강의를 통해 스프링 부트에 익숙해 지신거 같네요. 축하드립니다.
2020-09-27
catsriding thumbnail
5
IntelliJ IDEA, 자바 기초 문법, SQL 기초 문법, 스프링 MVC, 스프링 부트, JPA, 스프링 데이터 JPA, 스프링 시큐리티, QueryDsl, Git, GitHub, iTerm, DataGrip...자바 백엔드 학습을 하다 보면 학습한 것 보다 학습해야 하는 것들이 계속해서 더 쌓이는 데 저만 그런건 아니겠지요...🥺 해당 기술들의 도서나 Documentations, 또는(사실 거의 인강만...🤫) 백기선님과 김영한님의 인프런과 유튜브 강의를 보면서 코드를 작성해보고 실행 시켜 보는 과정을 통해 💭 '아, 이런것들이 있구나' 하고 알게 되는데 저는 딱 거기까지만 되더라구요. 무엇인가를 배울때 가장 빨리 배우는 방법은 역시 '모방' 👩🏻‍💻 모방은 창조의 어머니죠 😎 이 강의를 통해서 흩어져 있던 퍼즐 조각들을 하나하나 맞춰보게 되었고, 실제로 적용되는 모습을 보니 이전까지 머릿속에만 들어있던 또는 이해되지 않던 기능들이나 코드들이 살짝살짝 보이기 시작했어요 🔎 또, "이거 모르시면 안되요!" 하고 콕콕 팩트를 날려주시는데...팩폭이 워낙 쓰라리지만, 현재 제 자신의 수준을 파악할 수 있고 부족한 부분에 대해 무엇을 공부해와야 하는지 빠르게 간파할 수 있어 좋았습니다. 백엔드라는 방대한 기술들과 정보들 속에서 필요한 것을 적절한 정도로 학습하는 것도 중요한것 같아요. 그렇게 부족한것을 채우면서 강의를 하나하나 진행해 나가면, 어느새 백기선님께서 🎼말하는 대로~ "여기까지 오셨으면, 이정도는 직접 하실 수 있으실거에요" 가 되더라구요. 참, 수강평을 보면 이해되지 않는 분들이 계시더라구요. 실전 예제 강의인데 코드에 대한 상세한 설명을 요구하는 것은 경우가 아니지요. 노력없이 대가없이 쉽게 얻어지는 것은 현실세계에 없습니다. 이 강의는 분명히 해당 기술들에 대한 선수 지식을 요구하고 있어요. 로드맵 기획을 정말 잘 설계하셨다는 생각이 들더군요. 현재 이 강의의 타겟층이 분명히 잡혀 있다는 의미이지요. 아직 갈길이 멀고 부족한 것이 많지만, 백기선님 덕분에 방향을 잃지 않고 올바른 길로 더 빠르게 가고 있습니다. 이렇게 저렴한 비용으로 지식을 공유해 주셔서 항상 감사한 마음으로 배우고 있습니다. 그럼 또 다른 강의에서 뵙겠습니다. 정말 감사합니다 🙏🏻
2021-03-24
연관 로드맵
이 강의가 포함된 잘 짜여진 로드맵을 따라 학습해 보세요!