스프링과 JPA 기반 웹 애플리케이션 개발
스프링과 JPA 기반 웹 애플리케이션 개발
수강정보
(21개의 수강평)
538명의 수강생
5개월 할부시
월 66,000원330,000원
지식공유자 : 백기선
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

공개 일자

2020년 3월 16일 (마지막 업데이트 일자 : 2020년 3월 12일)

지식공유자 소개

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

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

주로 자바와 스프링을 사용해서 웹 애플리케이션을 개발하는 것을 좋아하지만 딱히 기술을 가리지는 않습니다.

4.8
21개의 수강평
default_profile.png
김동희 7달 전
항상 좋은 강의 감사합니다. 내용은 아주 만족합니다!!! 다만 기초가 부족하면 강의 중간에 뼈맞을수 있습니다. 주의하세요.
default_profile.png
HA HA 6달 전
동영상에 강의 내용외에 다른 소리가 너무 큰거같아요 ㅠ

교육과정

모두 펼치기 96 강의 18시간 12분
섹션 0. 시작하기
6 강의 34 : 33
섹션 1. 회원 가입
23 강의 296 : 47
계정 관리 기능 미리보기
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. 계정 설정
10 강의 105 : 23
프로필 수정 폼
09 : 50
프로필 수정 처리
15 : 43
프로필 수정 테스트
18 : 45
프로필 이미지 변경
13 : 35
패스워드 수정
15 : 59
패스워드 수정 테스트
04 : 28
알림 설정
07 : 24
ModelMapper 적용
10 : 07
닉네임 수정
04 : 47
패스워드를 잊어버렸습니다.
04 : 45
섹션 3. 관심 주제와 지역 정보
10 강의 89 : 24
관심 주제와 지역 정보 관리 기능 미리보기
03 : 27
관심 주제 도메인
05 : 49
관심 주제 등록 뷰
12 : 55
관심 주제 등록 기능 구현
13 : 09
관심 주제 조회
06 : 57
관심 주제 삭제
04 : 12
관심 주제 자동완성
05 : 44
관심 주제 테스트
14 : 41
지역 도메인
13 : 53
지역 정보 추가 삭제 및 테스트
08 : 37
섹션 4. DB와 이메일 설정
5 강의 50 : 21
PostgreSQL 설치 및 설정
07 : 13
인텔리J 데이터베이스 탭
07 : 34
SMTP 설정
08 : 07
EmailService 추상화
14 : 13
HTML 이메일 전송하기
13 : 14
섹션 5. 스터디
12 강의 139 : 25
스터디 관리 기능 미리보기
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. 모임
10 강의 130 : 37
모임 관리 기능 미리보기
08 : 31
모임 도메인
16 : 48
모임 만들기 뷰
15 : 07
모임 만들기 폼 서브밋
16 : 03
모임 조회
15 : 42
모임 목록 조회
07 : 51
모임 수정
08 : 24
모임 취소
08 : 14
모임 참가 신청 및 취소
19 : 14
모임 참가 신청 수락, 취소 및 출석 체크
14 : 43
섹션 7. 패키지 및 테스트 코드 정리
3 강의 28 : 08
패키지 구조 정리
13 : 17
테스트 클래스 정리
04 : 11
테스트 DB를 PostgreSQL로 전환
10 : 40
섹션 8. 알림
8 강의 95 : 04
알림 기능 미리보기
02 : 38
알림 도메인
03 : 57
알림 인프라 설정
21 : 59
스터디 개설 알림
21 : 36
알림 아이콘 변경
17 : 28
알림 목록 조회 및 삭제
10 : 55
스터디 변경 알림
12 : 55
모임 관련 알림
03 : 36
섹션 9. 검색 및 첫 페이지
7 강의 99 : 14
검색 기능 미리보기
02 : 16
검색 기능 구현
17 : 01
N+1 Select 문제 해결
15 : 04
페이징 적용
17 : 11
검색 뷰 개선
19 : 51
[과제1] 로그인 전 첫 페이지
08 : 51
[과제 2] 로그인 후 첫 페이지
19 : 00
섹션 10. 에러 처리 및 배포 준비
2 강의 23 : 27
에러 핸들러 및 뷰 추가
06 : 34
배포시 고려할 것
16 : 53
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스