BEST

Spring Boot - Core Principles and Applications

This course will cover everything you need to know about Spring Boot for practical use.

(5.0) 372 reviews

12,931 students

Spring Boot
Spring
spring-boot-actuator
Prometheus
grafana

This course is prepared for Basic Learners.

What you will learn!

  • Internal working principle of Spring Boot

  • Creating a Spring Boot Library

  • Understanding the core features provided by Spring Boot

  • Monitoring using Spring Boot

The ultimate Spring Boot for backend developers!
Contains all the content you need for practical use.

Kim Young-han's Spring Complete Conquest Series Complete!
A total of 9 best-selling introductory lectures for Spring

🚩 This lecture is the last lecture of "Kim Young-han's Spring Complete Conquest Series." If you are new to Spring, please check the Spring Complete Conquest Roadmap by Woowa Brothers' youngest technical director, Kim Young-han, before taking the course. (Go to Roadmap)

Until Spring Boot appeared
Growth of the Spring Framework

The Spring Framework is a huge technology that has evolved over the past 20 years.
It solves most of the technical problems that occur in practice and provides high stability and flexibility. That's why most major companies that use Java use Spring. Spring is the de facto standard technology used in the Java camp .

The huge and inconvenient Spring Framework

However, the Spring Framework has so many features and is so extensive that it can be overwhelming to know where to start.
Also, because it provides so much flexibility, it is difficult to choose which technologies to use together. As features increase, more and more configurations start to be required. So many developers start to feel that Spring is heavy and inconvenient.


Spring Boot - The Complete Spring Technology

Spring Boot, as its name suggests, starts from Boot. Spring Boot is a technology that helps you get started with Spring very easily and conveniently, and provides developers with numerous convenient functions. With the advent of Spring Boot, Spring, which used to feel huge and inconvenient, has become very easy and convenient to get started with.

Most projects that use Spring now use Spring Boot as a prerequisite. Spring technology was finally completed with the advent of Spring Boot .

Five key features provided by Spring Boot

Spring Boot provides five core features to help you use the Spring Framework conveniently. This lecture also focuses on these five core features.

01
Built-in server

You can easily develop and deploy web applications without having to install a separate server.

02
Automatic library management

Start your projects quickly and easily by automatically selecting and managing hundreds of libraries based on best practices.

03
Auto configuration

By automating complex Spring configurations, developers can develop applications easily and quickly.

04
External settings

You can conveniently check the external settings required when using an application in different environments, such as development environment ↔ operating environment.

05
Monitoring & Management Features

Provides the ability to automatically collect/monitor/manage numerous metrics for your application.

Making Spring technology even more powerful
Master 5 Core Spring Boot Features

We will teach you the core features of Spring Boot that are essential in practice through example code.


Course Objectives

We will cover all the Spring Boot you need for practical work in one lecture.

Spring Boot is very convenient, but it provides too many functions. You shouldn't learn it broadly, and if you go too deep, it won't be of much help in practice. So I prepared a lecture so that you can naturally understand the core principles and frequently used functions that are important in practice through example code.

We have boldly excluded features that are not very important or are not frequently used in practice. We have also included an effective monitoring method using Spring Boot that many people are curious about.

You can understand the principles naturally through example code.

You can naturally understand the magical principles of Spring Boot through example code. This course starts from the time when there was no Spring Boot. Then, as Spring Boot is gradually introduced, you can naturally understand the core concepts and strengths of Spring Boot through code.

Instead of complex theories, we will teach you practical best practices so that you can naturally understand the principles of Spring Boot, which is necessary for backend development, through the process of implementing example code.

📢 Note! This course is suitable for those who have experience learning Spring.

  • Spring Boot is a technology that helps you use the Spring Framework conveniently. Therefore, it is more important to learn the Spring Framework first. This lecture focuses on the functions of Spring Boot itself rather than on creating applications with Spring. And it is assumed that you have experience learning Spring.
  • If you are still unfamiliar with Spring or want to learn Spring from scratch, please refer to Kim Young-han's Spring Complete Mastery Roadmap .
  • This course is based on Spring Boot 3.0 and Spring Framework 6 .

Coverage

💡 This course is for backend developers and job seekers who want to understand Spring Boot easily and deeply through code . In addition, it is composed of content that will be helpful to those who are already using Spring Boot in practice but want to properly understand and use the core principles of Spring Boot .

Introduction to Spring Boot: Spring vs Spring Boot

This article introduces why Spring Boot was created and what Spring Boot is all about.

Spring Boot and Web Server

Going back a long time ago, I will explain step by step how to install a web server like Tomcat directly and build a web application as a WAR file and deploy it, and how to use a web server conveniently with a single JAR file using Spring Boot and embedded Tomcat like now. You will understand why it has developed this way, and in the process, you will naturally understand the principles of how the embedded server of Spring Boot works.

Spring Boot Starter & Library Management

Learn about the challenges of manually selecting and managing multiple libraries, how Spring Boot addresses these challenges, and learn about the Spring Boot starter libraries.

Auto Configuration

Spring Boot automates many features. The most representative feature is Auto Configuration. Thanks to this feature, developers do not have to register numerous Spring beans directly. However, if you do not understand the principle of auto configuration, it is difficult to solve the fundamental problem when a problem occurs while using Spring Boot.

In this lecture, you can easily understand the principle of automatic configuration, which is a core feature of Spring Boot, through examples. And you will also learn how to create and provide such automatic configuration yourself.

External settings and profiles

We start with how to use external configuration directly without Spring Boot. (OS environment variables, Java system properties, command line arguments, etc.) Then, we learn about the problems that occur when using external configuration directly and how Spring Boot solves these problems step by step. Furthermore, we learn the reason for the appearance and usage of Environment, @Value, and @ConfigurationProperties through examples.

Spring Boot Actuator

To operate a service in a real operating environment, monitoring the application beyond simple functional requirements is very important. Learn about the various functions and monitoring features provided by Spring Boot Actuator.

Monitoring with Micrometer, Prometheus, and Grafana

There is a saying that goes, “A commander who fails in battle can be forgiven, but a commander who fails on the border cannot be forgiven.” If we apply this saying to developers who operate services, it means that monitoring must be done well, even though failures can occur at any time.

We will explain how to build a monitoring environment using Prometheus and Grafana, monitoring tools that are widely used in recent practice. We will also learn how to identify problems through monitoring tools while increasing actual CPU, memory, and DB connection usage in the monitoring environment built in this way.

Utilize monitoring

We will explain how to embed the necessary indicators for monitoring directly into the application and check them through the monitoring dashboard. We will also learn how to measure the number of calls, average execution time, and maximum execution time of the business logic you want to track with a single annotation using a convenient tool called Micrometer. And we will also teach you how to properly monitor in practice.


Spring Core Master for Practice
The final installment of the Spring Complete Conquest series

Recommended Learners

A job seeker who is a backend developer who is new to Spring

A developer who has given up on studying Spring because it was too difficult

Practitioners who want to properly understand the core principles of Spring

Any Java backend developer who wants to be good at server development is OK

This lecture is the final lecture of the " Spring Complete Conquest Series " . This roadmap is aimed at Java backend developers who aim to conquer Spring and aim to completely master the core of Spring used in actual practice.

Next

For those who have completed the "Spring Complete Mastery Series", we recommend the " Spring Boot and JPA Practical Complete Mastery Roadmap " where you can learn while creating web applications using the latest practical technologies.

Lecture List

  • ✅ Java ORM standard JPA programming
  • ✅ Real-world! Spring Boot and JPA Utilization 1 - Web Application Development
  • ✅ Real-world! Spring Boot and JPA Utilization 2 - API Development and Performance Optimization
  • ✅ Practice! Spring Data JPA
  • ✅ Real-life! Querydsl

The long-awaited conclusion of the best roadmap studied by the most users on Inflearn!

Web Development No.1 Bestseller

If you have mastered all the contents of the roadmap, your Spring fundamentals will reach a level that is quite competitive in practice. We hope that you will master Spring through this roadmap and achieve your desired goals!

Recommended for
these people!

Who is this course right for?

  • Developers who want to deeply understand Spring Boot

  • Developers who want to easily understand Spring Boot in code

  • Developer Job Seeker

  • Developers who use Spring Boot in practice but want to understand and use the core principles of Spring Boot properly

Need to know before starting?

  • Java language

  • Spring Learning Experience

Hello
This is yh

531,216

Students

32,956

Reviews

8,844

Answers

5.0

Rating

22

Courses

진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.

 

저의 개발 인생 이야기

EO 인터뷰 영상

개발바닥 - 시골 청년 개발왕 되다

취업과 이직에 대한 고민 해결

 

More

Curriculum

All

107 lectures ∙ (15hr 45min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

372 reviews

5.0

372 reviews

  • wnsqud70

    Reviews 13

    Average Rating 4.4

    5

    100% enrolled

    아직 강의는 다 듣지 않았지만 영한님 강의는 항상 스프링이던, JPA던 처음부터 차차 올라가는 방식으로 쉽게 설명해 주시니 항상 듣기가 너무 좋습니다. 이번 기회에 부트가 알아서 세팅 해준다라는 개념만 알았던 저에게 어떻게 세팅을 해주고 어떤 불편함을 대신해 주는지 확실히 알게된 기회였네요! 하나하나 쉽게 설명 해주시는게 너무 좋습니다! 좋은강의 많이 만들어 주세요!

    • 김영한
      Instructor

      wnsqud70님 스프링 부트에 대해서 하나씩 지식을 쌓아가면서 잘 전달해드리고 싶었는데, 준비한 보람이 있네요^^ 열심히 들어주셔서 감사합니다.

  • Sang Do Park

    Reviews 17

    Average Rating 4.8

    5

    100% enrolled

    강의 출시 되자 마자 구매하여 삼일절 휴일의 시간까지 동원하여 전 강의를 다 보았습니다. 이미 아는 부분도 있고 새롭게 만나는 부분도 있고 즐거운 시간이었습니다. 일반적인 영상 강의를 보면 맥락이나 흐름 없이 ~~ 이렇다 ~ 라고 보여주고 끝나는 경우가 많은데 예전에는 (지옥불반도) 이러하였는데, 중간에 과정이 있었고.. 그걸 직접 경험하고 익히고 나은 대안으로 현재는 ~~ 이렇다 ~~ 라고 보여주기에 강의를 보는 내내 혼잣말이 많았네요.ㅎㅎ 맞아 !! 그랬지 ~ 예전에는 그랬어 ㅎㅎㅎ ( 그리고 보니 저도 .. 13년차 개발자 입니다... 우엑 .. ) 많은 백엔드 스프링 개발자들이 스프링 부트에 대한 막연한 두려움이나 어려움을 이 강의를 통해 이겨내면 좋겠다는 생각을 해봅니다. 그리고 사용하고 있는 기술에 대한 이해도가 높아질거라고 생각합니다. 프레임워크에 대한 사용법을 강의하는 내용은 많은 강사들이 시도하고 내놓고 있지만, 프로그램 관점이 아닌 시스템 운용 관점에서 활용해야 하는 부분에 대한 상세한 내용과 실습내용까지 컨텐츠로 녹여내는 강의는 이 강의가 유일하지 않을까 싶네요. 최근 구직 공고란을 보면 서비스 운용 경험 ~ 이라는 항목이 필수요소로 포함되기 시작하는데, 아직 주니어이신 분들은 이 강의를 통해 장애 대응에 대한 간접 경험을 꼭 얻어 가시기를 바랍니다. 길었던 강의에서 제게 남은 건 핀포인트 핀포인트... 메아리가 울리네요. 설치하러 갑니다. 모두 행복하시고 즐거운 개발자 라이프 되세요..... 감사합니다.

    • 김영한
      Instructor

      Sang Do Park님 13년차 개발자라고 하시니 스토리에서 공감되는 부분이 많으셨을 것 같아요 ㅎㅎ 이번에는 특히 시스템 운영 관점에서 개발자 분들이 이런 시스템 운영과 모니터링 방법도 있다는 부분도 알아두었으면 하고 뒷 부분은 좀 욕심을 내어보았습니다. 사실 인프라가 매우 잘 되어 있는 회사에 다니는 분들은 이미 경험한 부분일 수 있지만, 대부분은 그렇지 않은 상황이기 때문에 이런 부분을 꼭 한번 공유하고 방향을 잡아드리고 싶었습니다. Sang Do Park님이 남겨주신 수강평을 보니 그래도 욕심을 내길 잘 했다는 생각이 드네요. 열심히 들어주셔서 진심으로 감사합니다.

  • 오승우

    Reviews 5

    Average Rating 4.6

    5

    41% enrolled

    아직 다 들은건 아니지만 역시 김영한 강사님이십니다.. 강의 집중이 너무 잘되고 강의 영상도 3년전엔 방 모습이 나오시던 영상에서 이젠 강의도 고수가 되셔서 배경도 제거하시고 강사님만 나오시고.. 항상 감사합니다.

    • 김영한
      Instructor

      오승우님 열심히 준비했는데, 역시라고 말씀해주시니 고맙습니다^^ 저도 여러번 촬영을 하다보니 조금씩 발전을 하게 되네요. 이렇게 응원해주셔서 덕분에 저도 여기까지 올 수 있었습니다. 진심으로 감사합니다.

  • xellos

    Reviews 9

    Average Rating 5.0

    5

    100% enrolled

    저는 처음 node.js 개발자로 취직하고 1년간 블랙기업에서 최대 3개월까지 월급도 밀리면서 저녁, 주말할거 없이 혹사를 당했습니다. 결국 건강에 문제가 생기고 쉬게되면서, 남은 선택지로 용접학원에 들어가서 용접 기술을 배우느냐, 시장이 좀더 넓은 Java / Spring 개발자로 전향을 하느냐의 기로에서 정말 마지막이라는 생각과 함께 영한님의 스프링 강의를 신청하고 수강하게 되었습니다. 그 과정에서 돈이 없었기 때문에 일주일에 라면을 몇 개씩 나눠서 먹으면 될지를 고민하면서 약 8개월 이상 공부하면서 강의를 수강했고, 현재는 나름 괜찮은 중견 IT 서비스 기업에 입사하고 제법 시간이 지났습니다. 영한님 강의 덕분에 탄탄히 기초를 쌓을 수 있었고 현재는 회사에서 나름 인정받는 직원으로 성장했고, 팀에서도 신뢰받는 개발자로 성장했습니다. (개인적으로 복지나 연봉보다 좋은건 현재가 아닌 미래를 바라보면서 살수 있게된 점이 가장 좋지 않나 싶습니다 ㅋㅋㅋ) 매 강의마다 초보자 입장에서 깊게 생각하지 않으면 나올 수 없는 단계별 순서나 문서 자료에 감동을 느낄때가 많았습니다. 지금의 영한님 강의들이 제게 그랬던것처럼, 앞으로도 그시절의 저와같이 길을 잃고 고민하는 사람들에게 손을 내밀어 줄 수 있는 강의를 만들어주시면 좋겠습니다. 감사합니다!

    • 김영한
      Instructor

      xellos님 남겨주신 수강평을 10번은 넘게 읽어 보았습니다. 과거의 저와 비슷한 이야기여서 마음에 많이 남네요. 지금까지 정말 뛰어난 신입분들 중에 취업을 준비하면서 8개월이라는 시간을 정말 응집력 있게 사용하신 분들을 보아왔습니다. xellos님도 그런 분 중에 한분이겠지요. 나이와 경험을 떠나서 자신의 삶에서 8개월이라는 긴 순간을 응집력 있게 몰두해서 살아내는 것 자체가 정말 존경할 부분이라 생각합니다. 결국 다른 누군가의 몇 년보다 더 값진 8개월의 시간을 보내셨겠지요. xellos님 그런 시간을 보내주셔서, 또 저를 믿고 함께 해주셔서 진심으로 감사합니다. xellos님 이제 시작입니다. 항상 기술적 겸손함을 가지고 성장하시길 응원합니다. 저도 지금까지 제가 경험하고 쌓아온 지식과 지혜를 나누어서 더 많은 개발자 분들이 잘 성장할 수 있도록 기여하겠습니다. 고맙습니다.

  • bada

    Reviews 9

    Average Rating 4.9

    5

    100% enrolled

    드디어 다들었네요. 언제나 믿고 보는 김영한님 강의 정말 잘들었습니다. 제가 재직중인 회사는 SI 여서 그런지 제대로된 모니터링 해본적이 없었어요. 그냥 고객사에서 장애났다 연락오면 그때가서 고치기만 했지, 따로 모니터링을 도입할 생각 자체를 못했었죠. 그런데 이번 강의를 들으면서 모니터링이 얼마나 중요한지, 그리고 스프링부트를 이용하면 모니터링을 얼마나 쉽게 다룰 수 있는지 알 수 있어서 좋았어요. 이건 실무에 적용해보려고요. "다음으로" 챕터에서 했던 이야기들이 저에게는 많이 와닿네요. 메이저 서비스회사로 이직하고 싶은 3년차 SI 백엔드 주니어 개발자로서 고민이 많거든요. 열심히 공부는 하고 있지만 정작 실무에서는 했던 개발(주로 CRUD)을 반복해서 하는 바람에 이력서에 쓸만한 내용이 없습니다. 이력서에 뭘 쓰고 싶어도 작업 했던 내용들이 "어드민 페이지를 개발했다", "자동배포 스크립트를 제작했다" 이런것밖에 없어서 쓸게 없거든요. 나름 성능개선을 한걸 적어보아도, 이게 과연 이력에 쓸만한건지도 의문이 들때가 많습니다. 동시에 이제 고작 2년 3개월 된 주니어 개발자일 뿐인데 내가 너무 많은걸 기대하고 있나 생각도 듭니다. 제가 네카라쿠배에 간 후 2년 3개월이 지났다면 뭔가 대단한 커리어를 쌓았을까요? 이런 생각들을 하다보니 남는건 고민뿐이요, 퇴근하고나서 공부를 해도 쌓이는건 또 걱정뿐입니다. 3년차 백엔드 개발자에게 원하는 수준은 대체 어느정도일까요? 이직실패하고 싶지 않아 죽도록 달리고 있지만 이걸 모르겠으니 출구가 보이지 않는 터널을 달리는 느낌입니다. 물론 안다고 해서 출구가 바로 보이지는 않겠지만, 그래도 막연한 두려움은 없어질 것 같아요.

    • 김영한
      Instructor

      Bada Kang님 처음부터 한번에 큰 목표를 가지는 것도 좋지만, 지속해서 공부하고 노력하면 실력이 계속 쌓이게 되고, 그것을 기반으로 조금 더 나은 환경으로 이동하는 것도 좋은 방법입니다. 꾸준히 실력을 쌓고 면접을 보면서 지속적인 피드백을 받아야 방향도 더 빨리 잡을 수 있을거에요. 다음 영상을 보시면 도움이 되실거에요 https://youtu.be/QHlyr8soUDM 응원합니다!

yh's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!

$77.00