김영한의 실전 데이터베이스 - 기본편
김영한
실무에 꼭 필요한 SQL과 데이터베이스의 기본기를 학습합니다. 개발자뿐만 아니라 기획자나 데이터 분석가분들도 SQL을 깊이있게 학습합니다.
Basic
SQL, MySQL, DBMS/RDBMS
You will learn the core principles and advanced technologies of Spring in depth and be able to use Spring confidently.

Core Design Patterns
Spring Advanced Features
Spring AOP
Core design patterns, thread locality, Spring AOP
Understanding Spring's Three Core Advanced Concepts
📢 Please check before taking the class!
Spring Core Principles - Fundamentals
Spring Core Principles - Advanced Current Lecture
To become a skilled developer, you need to have a deep understanding of the tools you frequently use in your work.
Spring is the most widely used backend technology in practice.
Therefore, it is important for backend developers to have a deep understanding of Spring.
We previously learned the basics of Spring and object-oriented development in Spring Core Principles - Fundamentals .
To deeply understand Spring and become a competent developer in the field, you need to understand three key advanced concepts, building on what you learned in the basics. In this "Spring Core Principles - Advanced" chapter, you'll learn these advanced concepts.
1. Spring Core Design Patterns
2. Thread locals to handle concurrency issues
3. Spring AOP
1. Spring Core Design Patterns
Spring's internal technologies are built around several core design patterns. Therefore, to gain a deeper understanding of Spring, you must first understand the core design patterns it frequently employs.
Key design patterns taught in lectures
In this lecture, we'll explain these design patterns in a very easy-to-understand way, creating example code one by one. We'll also learn how to apply the design patterns we've learned to your own applications.
2. Thread local
Spring is primarily used for web application development. Web applications use multithreading to handle multiple requests simultaneously. Therefore, concurrency issues can arise due to competing threads.
Concurrency issues and thread locals covered in the lecture
In this lecture, you will learn about concurrency issues that arise when using Spring, and also learn about the concept of thread locals, which can conveniently solve concurrency issues.
Thread locals are an essential concept to understand how Spring works well in a multithreaded environment without concurrency issues.
3. Spring AOP
Spring AOP is a technology so widely used in practice that it feels almost magical. While many developers use Spring AOP, few truly understand how it works.
Beyond simply knowing and using Spring AOP's features, you need to deeply understand the operating principles of Spring AOP to be able to fundamentally resolve problems when they occur.
Spring AOP content delivered in lecture
In this lecture, we will go beyond a simple summary of Spring AOP's functions and cover everything about Spring AOP, from its operating principles to practical examples and precautions that frequently arise in practice.
etc
Additionally, we will provide you with advanced techniques for developing Spring containers, such as bean postprocessors, and various practical tips for developing Spring applications.
As this is an advanced course, the topics covered in this course are not easy.
However, if you want to become a skilled backend developer, this is something you must study at least once .
If you follow this course through to the end without giving up, you will experience a tremendous increase in your skills as a developer and be able to use Spring with more confidence than anyone else.
As this is a difficult subject, I've thoroughly prepared this lecture. I'll help you master it and make it your own.
Spring deeper
I want to know…
Advanced concepts of Spring
Improve your skills by learning
Those who want to grow more
Spring AOP
I do use it though…
How Spring AOP works
The principle is accurate
Anyone who wants to understand
Spring to Code
I want to understand …
Through design patterns
Spring's internal technology
Anyone who wants to understand
Web App with Spring
I'm thinking of making it ...
Through thread locals
Spring concurrency issues
Anyone who wants to understand
We're preparing a series designed to help you master Spring completely. We'll focus on core Spring features used in real-world applications, boldly omitting obsolete or outdated features, and provide practical know-how.
Kim Young-han's Complete Spring Conquest Series
Spring Core Principles - Practical Applications This lecture includes:
Complete mastery of Spring Boot + JPA practices
Advanced Practical Training on the Latest Backend Technologies
Who is this course right for?
Developers who want to understand Spring in depth
Developers who want to easily understand Spring through code
Developer job seeker
A developer who studied Spring but gave up because it was difficult
Developers who use Spring in practice but want to properly understand and use the core principles of Spring
Need to know before starting?
Java language
Spring Core Principles - Basics
567,881
Learners
38,229
Reviews
9,015
Answers
5.0
Rating
25
Courses
교육자
전: 우아한형제들 기술이사, 카카오, SK플래닛
진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.
EO 인터뷰 영상
개발바닥 - 시골 청년 개발왕 되다
All
125 lectures ∙ (16hr 44min)
Course Materials:
21. Organize
03:34
All
795 reviews
5.0
795 reviews
Reviews 19
∙
Average Rating 5.0
5
이번에는 정말 길었네요. 드디어 스프링의 3대 기술중 하나인 AOP를 이해를 할 수 있어서 너무 기뻤습니다. 마치 C언어의 포인터 처럼 저한테는 난공불락(?) 의 기술 같았거든요. 이번에도 차근차근 설명해주시는 것이 너무 좋았습니다. 이정도로 AOP 를 쉽게 가르쳐 주는 강의나 책은 아마 없을거 같습니다. 스프링을 본격적으로 알고 싶으신 분은 꼭 보셔야 합니다. 그리고 영한님께 감사 인사로 저의 스프링 개발자 도전기를 쓰려고 합니다. ============== 무언가 새로운 시도를 할 때는 처음에 정말 많은 에너지가 필요합니다. ...(중략)... 우선 공부하는 습관을 만드는게 정말 중요합니다. 그리고 개발 공부는 특히 모든 것을 실행해보고, 코딩해봐야 합니다. 책만 읽고 강의만 듣기만 해서는 절대 자기것이 안됩니다. 공부는 평일 3~4시간, 주말 8시간씩 꾸준하게 하시는 것을 추천드립니다. ============== 2020년 10월. 지금까지 python 개발자로 지내면서 제 커리어에 한계상황임을 인정하고 Spring 백엔드 쪽으로 커리어를 틀고 싶다고 영한님께 조언을 구하는 메일을 보냈습니다. 그 때 영한님께 위와 같은 답변을 받았습니다. 조금은 충격이었고, 많은 각오가 필요하겠구나 라고 느꼈습니다. 연차로 보면 이미 시니어 레벨로 접어든 상황이고, 어중간하게 java 에 대해 알고 있던 터라 도전은 정말 쉽지 않았습니다. 번번히 면접에서 낙방을 거듭했습니다. 작년 초 우아한 형제들의 면접에서 떨어졌을 땐 거의 1달 반 공부가 잘 안되었던 걸로 기억나네요. 영한님이 말한대로 3~4시간은 현실적으로는 어려웠지만 그 중 절반정도라도 하려고 했던거 같습니다. 사실 면접 중에서 여기 강의 내용이 자주 나온 건 아니었지만 영한님이 다루시는 강의 내용 덕에 더 깊게 백엔드 기술을 보는 눈이 길러진 것이 제일 도움이 되었던 것 같습니다. 그리고 훨씬 높은 기준으로 공부해야 한다는 사실도 말이죠. (강의에서 파생되는 것을 자기 것으로 만들려고 노력했던 거 같습니다.) 저의 노력이 통했는지... 올해 3월 말에 네카라쿠배 중 한 곳으로 가게 되었습니다. 아직 저 자신은 부족하다고 느끼지만 정말 길었던 1년 반의 준비기간이 끝나고 기회가 주어지니 설레기도 하고, 조금 걱정도 됩니다. 코로나가 끝나고 저도 새로운 자리에 적응될때 쯤 직접 감사인사 드리러 가겠습니다. 영한님 감사드립니다.
필환님 진심으로 축하드려요. 누구나 순간적인 열정을 가지기는 쉽지만, 필환님 처럼 그것을 습관으로 만들고 시스템화해서 지속가능하게 이어가는 것은 쉽지 않다 생각합니다. 특히 지금까지 개발한 언어도 자바가 아니고, 경력도 많으셔서 일반적인 주니어 개발자보다 좋은 회사에 취업하는 것이 더 불리한 상황이라 생각했습니다. 그런면에서 필환님 스스로 얼마나 노력하셨는지가 보이고, 스스로 만들어낸 큰 성과라 생각합니다. 그리고 경력이 많으셔서 기본기 보다는 실제 활용이 어떻게 되는지를 실무에서 많이 물어보았을 것인데, 이런 부분들까지 커버되도록 강의 내용을 단순히 학습하는 것을 넘어서 체득하신 것도 잘 하신 것이라 생각합니다. 현재 대부분의 회사들이 개발자가 부족하기 때문에 제가 필환님께 드린 조언처럼 공부해서 그에 상응하는 실력만 갖추게 된다면 누구나 좋은 회사에 취업할 수 있다 생각합니다. 마지막으로 저에게도 취업과 이직에서 힘든 나날들이 있었는데, 필환님의 글이 취업이나 이직을 준비하는 분들께는 정말 큰 힘이 될 것이라 생각합니다. 진심으로 고맙습니다.
Reviews 14
∙
Average Rating 4.6
5
스프링 AOP 교육 마스터피스. 최고의 강의 드릴 수 있는 최대 별 갯수가 5개밖에 되지 않아 강사님께 죄송할 뿐입니다.. 좋은 강의 정말 감사드립니다. 사족을 달자면 강사님의 코드를 따라 실습한 뒤에 나중에 따로 SpringObjenesis, CGLIB와 JDK 동적 프록시 등의 내부 구현 로직도(ProxyFactory, ObjenesisCglibAopProxy 등) 같이 디버깅해가며 보면 훨씬 더 많은 것을 얻어가실 수 있을 것 같습니다. 개인적으로 ProxyFactory proxyFactory = ProxyFactory(인터페이스없는컴포넌트);로 초기화하는 순간을 디버깅하여 CGLIB의 Enhancer까지 타고들어가 규칙에 맞게 여러가지 절차를 거쳐 최종적으로 getProxy()의 결과값으로 프록시 객체를 생성 및 반환할 때 objenesis를 사용하는 것을 눈으로 직접 보게 되었는데, 강사님의 강의를 보기전이었다면 해당 워크플로우의 윤곽을 전혀 알지 못해 아무것도 이해하지 못했을 겁니다.. 또한 EnableAspectJAutoProxy와 관련된 AspectJAutoProxyRegistrar 클래스가 @Aspect 애너테이션이 붙은 타입들을 가져오고, 이어지는 로직에서 BeanPostProcessor를 사용해 실제 객체 대신 프록시 객체들을 스프링빈으로 등록해주는 과정도 따로 찾아보는 동안 스프링 aop에 대한 이해가 많이 향상됨을 느꼈습니다. 큰 그림을 먼저 보여주심으로써 실제 로직의 세부동작방식을 이해할 수 있도록 해주신 점 깊이 감사드립니다.
Charlie T님 열심히 들어주셔서 고맙습니다. 이런 수강평 덕분에 또 다음 강의를 준비할 힘을 얻게 되네요^^!
Reviews 2
∙
Average Rating 5.0
5
영한님의 강의는 문을 열어주는 강의가 아닌 문고리를 잡고 돌리는 법을 알려주는 강의인 것 같습니다. 항상 좋은 강의 보여주셔서 감사합니다 ㅠㅠ
JongSeong Kim님 멋진 비유 감사합니다^^!
Reviews 41
∙
Average Rating 4.9
5
토비의 스프링 6장 보고 멘붕와서 잠시 책을 덮었었는데 이 강의 완강하고 다시 펴러 가야겠습니다. 완강 후기) 처음에는 125강이라는 강의 규모에 압도되었는데 왜 이렇게 강의 규모가 커진지 들으면서 이해가 되었습니다. 강의 마지막에 하신 말씀처럼 더욱 많은 코드를 접하고 더욱 많은 레퍼런스들을 보면서 힘내보겠습니다. 이제 이해가 부족한 다른 디자인 패턴에 대해서 공부하러 가야겠습니다. 다음 강의때 더 나아진 모습으로 들으러 오겠습니다.^^
!?님 첫 수강평 감사합니다^^ 항상 응원합니다!
$93.50
Check out other courses by the instructor!
Explore other courses in the same field!