Thumbnail
BEST 개발 · 프로그래밍 백엔드
스프링 웹 MVC
(4.9)
161개의 수강평 ∙ 2243명의 수강생
110,000원

월 22,000원

5개월 할부 시
지식공유자: 백기선
총 60개 수업 (11시간)
수강기한: 무제한
수료증: 발급
난이도:  입문-초급-중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유
중급자를 위해 준비한
[웹 개발, 백엔드] 강의입니다.

이 강의는 자바 서블릿(Servlet) 기반의 MVC 프레임워크인 스프링 웹 MVC에 대해 학습합니다. 원할한 학습을 위해서 《스프링 프레임워크 핵심 기술》 강의를 수강해주세요.

✍️
이런 걸
배워요!
스프링 웹 MVC 동작 원리
스프링 웹 MVC의 다양한 기능
스프링 부트 없이 스프링 웹 MVC 사용
스프링 부트의 스프링 웹 MVC 설정 수정

스프링 웹 MVC의 핵심 원리와 설정, 활용을 한번에!
백기선의 스프링 웹 MVC

📢 알려드립니다

스프링 웹 MVC

이 강의에서는 자바 서블릿(Servlet) 기반의 MVC 프레임워크인 스프링 웹 MVC에 대해 학습합니다.
여러분은 이 강의를 통해 스프링 MVC의 동작 원리, 설정 방법, 애노테이션 기반의 스프링 웹 MVC 사용 방법을 배울 수 있습니다.

자바 서블릿 기반의 MVC 프레임워크
스프링 웹 MVC

자바 엔터프라이즈 에디션(Java EE)은 웹 애플리케이션을 개발할 수 있는 서블릿(HTTP Servlet)이라는 스펙과 API를 제공합니다.
스프링 웹 MVC는 서블릿 기반 API 기반 애플리케이션을 개발할 때 보다 쉽고 빠르게 개발할 수 있는 프레임워크를 제공합니다. 이를 통해 개발자는 서블릿 API보다는 애플리케이션 로직에 집중할 수 있습니다.
실제로 많은 회사에서 스프링 웹 MVC를 기반으로 엔터프라이즈 애플리케이션을 개발 및 배포, 운영하고 있습니다.

스프링 웹 MVC 강의를
원활하게 수강하기 위해서는

  • 이 강의는 자바 프로그래밍 경험이 있다고 가정하고 진행됩니다.
  • 이 강의에서는 JDK, 빌드툴, IDE 설치, Git에 관한 내용은 다루지 않습니다.
  • 이 강의는 JDK 11, Maven, IntelliJ를 사용해 만들었습니다.
  • 원활한 학습을 위해 이번 강좌를 수강하기 전에 다음 강좌 수강을 고려해 주시기 바랍니다.
    • 스프링 프레임워크 핵심 기술 (필수)
    • 스프링 부트 개념과 활용 (선택)

강의 소개

이 강의는 스프링 MVC 동작 원리와 설정 방법, 애노테이션 기반 MVC 활용 방법에 대해 다루고 있습니다.

이 강의를
이런 분들에게 추천합니다

스프링 웹 MVC의
동작 원리를
이해하고 싶은 분

스프링 웹 MVC의
설정 방법에 대해
알고 싶은 분

스프링 웹 MVC의
다양한 기능을
학습하고 싶은 분

스프링 부트 없이도
스프링 웹 MVC를
사용하고 싶은 분

이 강의는
이런 것을 목표로 합니다

  • 애노테이션 기반 스프링 웹 MVC의 동작 원리를 이해합니다.
  • 스프링 웹 MVC가 제공하는 다양한 기능을 이해하고 사용할 수 있습니다.
  • 사용하는 스프링 웹 MVC 기능에 대한 테스트 코드를 작성할 수 있습니다.
  • 스프링 부트 없이도 스프링 웹 MVC 애플리케이션을 개발할 수 있습니다.
  • 스프링 부트가 제공하는 스프링 MVC 웹 설정을 고쳐 사용할 수 있습니다.

이 강의에는
이런 특징이 있습니다

Webflux는 다루지 않습니다

  • Webflux는 리액티브 스택 기반으로 웹 애플리케이션을 개발할 때 사용할 수 있는 모듈입니다. 스프링 프레임워크는 5버전부터 스프링 Webflux를 제공하고 있습니다.
  • 하지만 이 강의에서는 Webflux를 다루지 않습니다. 강의에서 다루는 기술 스택과 크기 때문입니다.
  • 이 강의는 전형적인 서블릿 기반의 웹 MVC를 위한 강의입니다.

서블릿에 대해 학습합니다

  • 이 강의에서는 스프링 MVC 동작 원리를 이해하는데 필요한 서블릿 기능에 대해 학습합니다. 서블릿 기반의 웹 MVC의 기반이 되는 서블릿 JSP이 어떻게 동작하는지 이애해야 스프링 웹 MVC의 동작을 이해할 수 있기 때문입니다.
  • 따라서 이 강의는 서블릿 기반 웹 애플리케이션 개발이 처음이거나 스프링 MVC 동작 원리가 궁금했던 분에게 유용할 것입니다.

타임리프를 주로 사용합니다

  • 이 강의에서는 스프링 웹 MVC 기능 학습에 필요한 뷰를 만들 때 타임리프(Thymeleaf)를 사용합니다. 예제에서 타입리프를 사용하고는 있으나 비중이 높지 않습니다. 그 외에 JSP(Java Server Pages)를 비롯한 다른 뷰 템플릿 엔진도 사용하고 있습니다.
  • 이 강의는 스프링 웹 MVC에 집중하는 강의로, 뷰 템플릿 엔진에 대해 자세히 학습하지는 않습니다. 다만 이 강의를 통해 타임리프의 사용법에 익숙해질 수는 있습니다.

스프링 부트에 관하여

  • 이 강의는 스프링 부트에 친화적입니다. 스프링 부트를 사용하여 예제 프로젝트를 만들고 코딩합니다.
  • 하지만 반드시 스프링 부트를 쓰지는 않습니다. 스프링 부트를 사용하지 않고도 스프링 웹 MVC를 사용할 수 있도록 하는 것이 이 강의의 목표 중 하나입니다.
  • 이 강의를 통해 스프링 부트가 제공하는 자동 설정을 보다 잘 이해할 수 있을 뿐 아니라, 스프링 웹 MVC 설정을 원하는 대로 고쳐 사용할 수 있을 것입니다.

테스트 친화적 개발

  • 스프링 웹 MVC의 기능을 확인하기 위해 뷰를 만들고 요청을 보내는 방법을 사용할 수도 있지만, 테스트 코드를 작성하고 확인하는 방법을 익히는 것 또한 효율적이며 중요합니다.
  • 이 강의에서는 모든 스프링 MVC 기능을 코드로 테스트하는 방법을 소개합니다. 이를 통해 구현할 웹 MVC에 대한 테스트 작성에 있어서 자신감을 얻을 수 있을 것입니다.

예제 코드 제공


연관 강의

스프링 프레임워크 핵심 기술선수과목

  • 스프링 부트의 핵심 기술을 이해하기 위한 강의입니다. 스프링 부트로 스프링을 처음 접한 분들에게 도움됩니다.

스프링 부트 개념과 활용선택과목

  • 스프링 부트의 여러 기능을 이해하고 사용법을 익히기 위한 강의입니다. 스프링 부트를 학습하고 싶은 분들에게 도움됩니다.

지식공유자가 알려주는
강의 수강 꿀팁!
🎓
이런 분들께
추천드려요!
스프링 웹 MVC의 동작 원리를 이해하고 싶은 분
스프링 웹 MVC의 다양한 기능을 알고 싶은 분
스프링 웹 MVC의 설정 방법을 알고 싶은 분
스프링 부트 없이 스프링 웹 MVC를 사용하고 싶은 분
📚
선수 지식,
필요한가요?
《스프링 프레임워크 핵심 기술》 강의
Java 프로그래밍 경험
IDE, Git 사용법

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

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

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

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

커리큘럼 총 60 개 ˙ 11시간의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 1. 스프링 MVC 동작 원리
스프링 MVC 소개 미리보기 20:53
서블릿 소개 04:45
서블릿 애플리케이션 개발 17:24
서블릿 리스너와 필터 11:27
스프링 IoC 컨테이너 연동 14:34
스프링 MVC 연동 15:20
DispatcherServlet 1부 13:49
DispatcherServlet 2부 16:50
DispatcherServlet 3부 11:04
스프링 MVC 구성 요소 23:13
스프링 MVC 동작 원리 마무리 15:34
섹션 2. 스프링 MVC 설정
스프링 MVC 빈 설정 10:36
@EnableWebMvc 미리보기 18:43
WebMvcConfigurer 10:07
스프링 부트의 스프링 MVC 설정 26:04
스프링 부트 JSP 14:02
WAR 파일 배포하기 05:14
WebMvcConfigurer 1부 Formatter 13:25
도메인 클래스 컨버터 08:45
핸들러 인터셉터 09:48
핸들러 인터셉터 구현 04:47
리소스 핸들러 13:40
HTTP 메시지 컨버터 09:37
HTTP 메시지 컨버터 2부 JSON 10:15
HTTP 메시지 컨버터 XML 11:10
기타 WebMvcConfigurer 설정 06:09
스프링 MVC 설정 마무리 06:36
섹션 3. 스프링 MVC 활용
스프링 MVC 활용 소개 04:59
요청 맵핑하기 1부 HTTP Method 미리보기 14:20
요청 맵핑하기 2부 URI 패턴 18:36
요청 맵핑하기 3부 미디어 타입 15:25
요청 맵핑하기 4부 헤더와 매개변수 08:34
요청 맵핑하기 5부 HEAD와 OPTIONS 09:12
요청 맵핑하기 6부 커스텀 애노테이션 08:57
요청 맵핑하기 7부 연습 문제 13:51
핸들러 메소드 1부 아규먼트와 리턴 타입 17:59
핸들러 메소드 2부 URI 패턴 미리보기 13:21
핸들러 메소드 3부 요청 매개변수 (단순 타입) 07:42
핸들러 메소드 4부 폼 서브밋 15:58
핸들러 메소드 5부 @ModelAttribute 10:15
핸들러 메소드 6부 @Validated 03:18
핸들러 메소드 7부 폼 서브밋 에러 처리 13:52
핸들러 메소드 8부 @SessionAttributes 06:38
핸들러 메소드 9부 멀티 폼 서브밋 06:46
핸들러 메소드 10부 @SessionAttribute 05:13
핸들러 메소드 11부 RedirectAttributes 09:59
핸들러 메소드 12부 Flash Attributes 07:43
핸들러 메소드 13부 MultipartFile 13:44
핸들러 메소드 14부 ResponseEntity 09:26
핸들러 메소드 15부 @RequestBody & HttpEntity 18:16
핸들러 메소드 16부 @ResponseBody & ResponseEntity 09:34
핸들러 메소드 17부 정리 및 과제 04:46
모델 @ModelAttribute 09:48
데이터 바인더 @InitBinder 14:39
예외 처리 핸들러 @ExceptionHandler 07:49
전역 컨트롤러 @ControllerAdvice 05:13
스프링 MVC 강좌 마무리 01:58
강의 게시일 : 2019년 01월 29일 (마지막 업데이트일 : 2019년 01월 29일)
수강평 총 161개
수강생분들이 직접 작성하신 수강평입니다. 수강평을 작성 시 300잎이 적립됩니다.
4.9
161개의 수강평
5점
4점
3점
2점
1점
VIEW 좋아요 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
우유소보루 thumbnail
깊게공부하는것 같습니다. 스프링을 완전 처음배우시는분들은 이해가어렵기때문에 강의들을때 모르는게있으면 찾아보고 이해가 되시면 강의를 들어가는방법이좋을것같습니다.
2022-06-13
Charlie T thumbnail
백기선님 강의 들으려고 노력했습니다만 포기해야겠습니다. 강의마다 인텔리제이로 단축키 휙휙 넘겨가면서 하시니 도저히 따라갈 수가 없었고, (적어도 어떤 단축키를 사용하는지정도는 설명해주셨으면...) 딘축키, IDE 기능을 이용해서 디버깅만 하며 설명을 하시니 STS나 이클립스로 스프링을 접해본 분이라면, (그리고 윈도우 유저라면) 특히 진행이 힘들 강의라 생각됐습니다. 사실, 인텔리제이는 굉장히 좋은 IDE가 맞습니다. (비싸서 못쓸뿐..) 그러나 스프링 공부하려고 왔는데 IDE 사용법을 따라가지 못해 진행을 못한다는 것은 말이 안된다고 생각합니다.. 인텔리제이를 원활히 쓸 수 있는 사람에게도 어려운 강의입니다. 개인적인 생각으로는 JPA, h2, 타임리프, RestController 등 다른 여러 기술에 이미 친숙한 스프링 중고급자정도는 되어야.. 쓰다보니 IDE에 대한 불만이 대부분이네요. 하지만 단순히 그랬다면 4점정도는 드렸을 겁니다. 하지만 근본적으로 강의 내내 설명이 친절하지 않았습니다. (예를들어 DispatcherServlet의 기본 전략 : DispatcherServlet.properties 라는 식으로 설명을 하면 알아듣는게 힘듭니다..) 저는 스프링을 꽤 오래 쓴 유저지만 좋은 강의인지에 대한 생각은 솔직히 조심스럽습니다.
2020-03-09
지식공유자백기선
이해합니다. 보통 IDE 자체를 다루기 어려운 상황이라면 강의를 보는것도 화면 전환이 갑작스럽게 느껴져서 힘들었을 수 있겠네요. 변명이라 생각하실 수 있겠지만 아주 기본적인 단축키까지 일일히 설명드리기엔 강의의 본 주제에 집중하기가 어려웠습니다. 생소하게 느낄만한 디버깅용 단축키 정도는 수업에서도 설명을 드리긴 했으나 충분하지 않았을 수도 있겠네요. 그리고 스프링 웹 MVC 강의를 수강하는데 있어서 JPA, H2, 타임리프, @RestController에 대한 선수 지식은 필요하지 않습니다. 그렇게 느끼셨다면 역시 제 강의 실력이 부족해서 그렇습니다. 이 강의는 절대로 해당 기술와 깊은 관련이 없습니다. 다만 그들과 연동하는 (그리고 그 중에 @RestController는 사실 이 강의에서 배워야 하는거지 미리 알고 있어야 하는 지식이 아닙니다.) 일들이 많이 벌어지기 때문에 어떻게 같이 쓰는지 보여드린거 뿐이지 그 모든걸 자세히 알고 있어야 이 강의를 소화할 수 있는 것은 아닙니다. 설명이 친절하지 않다고 느끼셨다면 그 역시도 제 불찰입니다. 예로 드신 DispatcherServlet의 기본 전략의 경우는 "스프링 MVC 구성요소"에서 21분간 자세하게 설명을 드리긴 했으나 제가 잘 알아듣지 못하게 설명한 것 같네요. Charie T님 말고도 많은 분들이 공감해 주셨는데 다음 강의 만들 때 참고 많이 하겠습니다. 피드백 감사합니다.
2020-10-16
김종현 thumbnail
사실은 결코 쉽지 않은 강의였습니다. 수강 하려고 시도 하시는 분은 조금 신중하게 선텍하시길 바랍니다. 그래도 강의가 굉장히 깊습니다. 테스트코드 작성위주로 설명하고 레퍼런스 보는 방법, 프레임웍 자체를 까서 보여주는 방식 등 깊게 이해가 필요하다만 추천합니다. 특히 한번씩 쌤 본인이 실수했을 때 나오는 민망한 웃음이 매력포인트 입니다. ㅋㅋㅋㅋㅋ
2020-01-16
갈꿈 thumbnail
프로젝트에 적용하기 급급하다가 한번 정리해야할 필요성을 느끼다가 강좌를 들어서 봤습니다. 오래전부터 세미나나 강좌를 들어봤는데, 너무 유용했습니다. 감사합니다.
2022-01-08
휴식중인 도마뱀 thumbnail
쉽게 설명해주셔서 감사합니다. mvc가 뭐지, 테스트코드는 또 어떻게 작성해야 하는거지, 등등 시작도 하기 전에 갖고 있었던 고민들이 강의를 들으면서 이해가 되고, 스프링이 재밌다라는 느낌을 받게 되었습니다. 이해가 될 때까지 반복해서 듣고, 테스트 코드 작성 하는 법도 계속 학습하면서, 제 것이 되도록 노력하겠습니다. 좋은 강의 만들어주셔서 감사합니다.
2019-02-14
연관 로드맵
이 강의가 포함된 잘 짜여진 로드맵을 따라 학습해 보세요!
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의를
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스