
토비의 스프링 6 - 이해와 원리
토비
스프링 프레임워크가 만들어지는 과정을 살펴보면서 스프링을 잘 이해하고 사용하는데 도움이 되는 원리를 찾아봅니다. 이를 통해 개발자가 작성하는 애플리케이션의 코드는 어떻게 만들어져야 하는지도 살펴봅니다.
Basic
Java, Spring
Đây là khóa học nhằm tìm hiểu nguyên lý hoạt động của Spring Boot bằng cách tạo ra các chức năng cốt lõi của Spring Boot, qua đó tìm hiểu cách học và sử dụng tốt Spring Boot. Bạn có thể tìm hiểu nhiều cách khác nhau để sử dụng Spring Framework được Spring Boot sử dụng.

Spring Boot hoạt động như thế nào
Cách hiểu và sử dụng các công nghệ và cấu hình do Spring Boot cung cấp
Các công nghệ cốt lõi và ứng dụng của Spring Framework
Cách tạo mô-đun Spring Boot của riêng bạn
Tạo một khuôn khổ bằng chính đôi tay của tôi
Nắm vững những kiến thức cơ bản về Spring Boot! 🌱
Spring Boot là một công cụ giúp bạn phát triển ứng dụng Spring nhanh chóng và dễ dàng. Nó cho phép bạn bắt đầu phát triển ứng dụng Spring rất nhanh chóng và thuận tiện, đồng thời xử lý rất nhiều công việc hậu trường, gần như một phép thuật.
Spring Boot đã trở thành tiêu chuẩn thực tế cho việc xây dựng ứng dụng sử dụng Spring Framework. Tuy nhiên, nếu không hiểu rõ các nguyên lý cơ bản đằng sau sự tiện lợi của nó, bạn sẽ gặp phải nhiều hạn chế và rào cản. Để phát triển ứng dụng, tích hợp thêm nhiều công nghệ và đáp ứng nhu cầu cụ thể, bạn cần hiểu cách Spring Boot hỗ trợ phát triển ứng dụng Spring.
Tôi đang phát triển một máy chủ API hoặc dịch vụ phụ trợ bằng Spring Boot, nhưng tôi không chắc mình có hiểu và sử dụng Spring đúng cách hay không .
Tôi bối rối vì chức năng hệ thống được tạo bằng Spring Boot đã thay đổi sau khi áp dụng mẹo tôi tìm thấy thông qua cộng đồng hoặc tìm kiếm.
Tôi chỉ phát triển với Spring Framework, nhưng sau đó tôi chuyển sang Spring Boot và có vẻ như các phương pháp sử dụng Spring mà tôi biết đã trở nên vô dụng .
Tôi không thực sự hiểu sự khác biệt giữa Spring và Spring Boot là gì và Spring Boot là gì .
Tôi muốn thêm công nghệ mới vào Spring Boot hoặc thay đổi cách sử dụng công nghệ này , nhưng tôi không chắc cách thực hiện đúng.
Tôi muốn tạo ra công nghệ hoặc mô-đun tính năng của riêng mình có thể được áp dụng tự động như Spring Boot.
Trong khóa học này, bạn sẽ tìm hiểu các nguyên tắc hoạt động cốt lõi của Spring Boot, rất cần thiết cho việc học và sử dụng hiệu quả. Bạn sẽ có thể hiểu đầy đủ và sử dụng Spring Boot thông qua ba bước sau.
Hiểu rõ cách thức hoạt động của Spring Boot sẽ giúp bạn học hỏi và áp dụng các công nghệ mới một cách nhanh chóng và chính xác, vì bạn sẽ có được một phương pháp tiếp cận nhất quán trên nhiều công nghệ của Spring Boot. Điều này sẽ loại bỏ nhu cầu phải tìm kiếm các giải pháp rời rạc mỗi lần. Bằng cách nắm vững phương pháp tiếp cận và phương pháp ứng dụng nhất quán được sử dụng trên nhiều công nghệ Spring Boot khác nhau, bạn sẽ có thể phân tích chính xác các vấn đề và tìm ra giải pháp.
Cách tốt nhất để hiểu cách thức hoạt động của Spring Boot là tự mình xây dựng một framework. Spring Boot cũng là một ví dụ tuyệt vời để học cách sử dụng Spring Framework. Bằng cách tự mình xây dựng một framework, bạn có thể suy ngẫm về nguồn gốc của Spring Boot, các mục tiêu của nó và cách Spring Framework được phát triển. Bằng cách tự mình xây dựng mã đơn giản nhưng thiết yếu, bạn có thể thu thập được nhiều kiến thức về Spring và phát triển Java back-end. Bằng cách tìm hiểu cách Spring Boot được xây dựng, bạn có thể tạo các module Spring Boot của riêng mình hoặc thậm chí tạo ra các công cụ tiện lợi áp dụng công nghệ Spring.
Hiểu rõ cách thức hoạt động của Spring Boot sẽ giúp bạn hiểu cách nó tận dụng Spring Framework. Bạn cũng sẽ có thể tìm hiểu sâu hơn về các tính năng khác nhau của Spring Boot.
Bất kỳ ai sử dụng Spring Boot trong thực tế
Những người muốn biết và sử dụng Spring và Spring Boot tốt hơn
Dành cho những ai đang cân nhắc chuyển từ Spring sang Spring Boot
Những người muốn học Spring Boot hiệu quả hơn
1. Xem xét Spring Boot
Chúng ta sẽ tìm hiểu lý do ra đời, các tính năng và mục tiêu của Spring Boot. Chúng ta sẽ giải thích ý nghĩa của việc Spring Boot không có container, ý kiến chủ quan là gì, và tại sao việc hiểu rõ Spring Boot lại quan trọng. Chúng ta cũng sẽ đi sâu vào khái niệm container, vốn có thể gây nhầm lẫn.
2. Ứng dụng độc lập
Hãy cùng khám phá cách các ứng dụng độc lập, một tính năng chính của Spring Boot, có thể được tạo ra bằng cách tạo các ứng dụng servlet độc lập và các ứng dụng Spring độc lập. Thông qua đó, chúng ta cũng sẽ tìm hiểu cách công nghệ web Spring được xây dựng và cách sử dụng Spring container trong quá trình này.
3. Tiêm phụ thuộc
Khi nói về Spring, bạn không thể bỏ qua DI. Chúng ta sẽ tìm hiểu khái niệm DI, cách Spring hỗ trợ DI và cách áp dụng DI vào kiểm thử. Chúng ta sẽ sử dụng Spring container để áp dụng DI vào mã nguồn. Chúng ta cũng sẽ tìm hiểu về các decorator và triển khai proxy sử dụng DI.
4. Ứng dụng dựa trên cấu hình tự động
Khóa học này khám phá các loại siêu dữ liệu cấu hình Spring và giải thích cách Spring Boot xử lý chúng. Khóa học cũng tìm hiểu về cấu hình tự động được giới thiệu bởi Spring Boot và cấu hình người dùng do các nhà phát triển tạo ra. Khóa học này sẽ giúp bạn hiểu cấu trúc của các ứng dụng được phát triển bằng Spring Boot. Thông qua quá trình phát triển thực tế, bạn sẽ chứng minh cách cấu hình tự động của Spring Boot tận dụng các công nghệ Spring khác nhau. Bạn cũng sẽ học cách sử dụng các chú thích Spring khác nhau được Spring Boot sử dụng.
5. Cấu hình tự động có điều kiện
Chúng ta sẽ tìm hiểu cách Spring Boot tận dụng công nghệ đăng ký bean có điều kiện @Conditional của Spring để tự động cấu hình. Bạn sẽ được trải nghiệm trực tiếp cách thông tin cấu hình ứng dụng thay đổi theo các điều kiện khác nhau. Chúng ta cũng sẽ tìm hiểu cách việc thêm trực tiếp cấu hình bean vào Spring Boot ảnh hưởng đến tính năng tự động cấu hình như thế nào.
6. Cấu hình tự động bằng cài đặt bên ngoài
Tính năng tự động cấu hình tiện lợi của Spring Boot không giới hạn việc phát triển một cách cứng nhắc, phiến diện. Chúng ta sẽ khám phá cách tận dụng cấu hình bên ngoài để tùy chỉnh dễ dàng và linh hoạt các công nghệ mà Spring Boot cung cấp thông qua việc triển khai thực tế. Chúng ta cũng sẽ tìm hiểu về tính trừu tượng của Môi trường (Environment), thứ tự ưu tiên nguồn thuộc tính (property) và cách sử dụng placeholder của Spring. Chúng ta cũng sẽ tìm hiểu cách các thuộc tính được liệt kê trong application.properties được liên kết với các bean được tự động cấu hình và cách chúng được nhóm lại.
7. Phát triển cấu hình tự động JDBC Spring
Bạn sẽ tự thiết kế và triển khai tính năng tự động cấu hình cho công nghệ Spring JDBC. Khóa học này sẽ hướng dẫn bạn các chiến lược để hiểu cấu trúc tự động cấu hình được áp dụng trong Spring Boot. Bạn sẽ học cách thiết kế với nhiều tùy chọn, tương tự như Spring Boot, và trải nghiệm cách tính năng tự động cấu hình áp dụng các tính năng phù hợp dựa trên điều kiện, đồng thời tạo mã thực tế.
8. Nhìn kỹ hơn vào Spring Boot
Bạn sẽ thấy rằng ngay cả khi chuyển đổi mã nguồn giống Spring Boot mà bạn đã phát triển trực tiếp sang Spring Boot, mã ứng dụng của bạn vẫn sẽ hoạt động như cũ. Giờ đây, bạn sẽ có cái nhìn rõ ràng hơn về những gì đang diễn ra bên dưới bề mặt khi phát triển với Spring Boot. Bạn sẽ học cách phân tích tính năng tự động cấu hình mở rộng của Spring Boot mà không bị quá tải. Bạn cũng sẽ phân tích mã tự động cấu hình trong Spring Boot Core, Spring Web và JDBC.
H. Tại sao tôi cần hiểu cách Spring Boot hoạt động?
Bạn không cần phải hiểu rõ cách thức hoạt động của mọi công nghệ mình sử dụng, nhưng việc hiểu rõ cách thức hoạt động của Spring Boot sẽ giúp bạn sử dụng nó hiệu quả hơn. Spring Boot xử lý nhiều tác vụ tự động và ẩn, vì vậy việc hiểu rõ điều này sẽ cho phép bạn tận dụng tối đa các tính năng của nó mà không bỏ sót bất kỳ tác vụ nào. Bạn cũng có thể mở rộng nó để thực hiện các tác vụ mà ứng dụng của bạn yêu cầu. Việc tìm hiểu cách sử dụng Spring Framework được tích hợp trong Spring Boot cũng sẽ giúp bạn phát triển các ứng dụng dựa trên Spring.
H. Tôi không biết nhiều về Spring Framework. Tôi có thể tham gia khóa học này không?
Khóa học này giới thiệu công nghệ Spring Framework được sử dụng bởi Spring Boot và giải thích các khái niệm cốt lõi của Spring. Khóa học bao gồm hoạt động của Spring container, dependency injection và các mẫu thiết kế áp dụng. Tất nhiên, sau khi hoàn thành khóa học này, bạn nên tìm hiểu sâu hơn về công nghệ và nguyên lý hoạt động của Spring Framework nếu quan tâm.
H. Khóa học sử dụng Spring Boot 2.7. Liệu nó có hữu ích khi sử dụng phiên bản 3.0 mới phát hành không?
Tất cả các ví dụ được trình bày trong bài giảng này đều hoạt động với Spring Boot 3.0, chỉ có một số thay đổi nhỏ về phiên bản thư viện và một số tên gói. Bài giảng cũng đề cập đến cách di chuyển các ví dụ sang Spring Boot 3.0.
Khóa học này dành cho ai?
Bất cứ ai muốn hiểu rõ hơn và sử dụng Spring Boot một cách thoải mái
Những người đang sử dụng Spring Boot nhưng cảm thấy chưa biết nhiều về Spring
Bạn nào muốn học Spring Boot hiệu quả
Bất cứ ai muốn tạo và sử dụng module Spring Boot của riêng mình
Cần biết trước khi bắt đầu?
Ngôn ngữ Java (Java 8+)
15,481
Học viên
956
Đánh giá
410
Trả lời
5.0
Xếp hạng
8
Các khóa học
호주에 살고 있는 소프트웨어 개발자입니다. 30년간 다양한 분야의 시스템과 서비스를 개발해본 경험이 있습니다.
스프링 프레임워크와 관련 기술을 좋아하고 JVM 기반 언어를 주로 사용합니다.
한국스프링사용자모임(KSUG)을 설립하고 활동했고, 토비의 스프링이라는 책을 쓰기도 했습니다.
개발과 관련된 다양한 주제에 관해 이야기하는 것을 좋아합니다.
Tất cả
68 bài giảng ∙ (11giờ 6phút)
Tài liệu khóa học:
Tất cả
386 đánh giá
5.0
386 đánh giá
Đánh giá 3
∙
Đánh giá trung bình 5.0
5
안녕하세요. 저는 만 7년 이상 스프링 실무경력을 가지고 있는 개발자입니다. 강의 수강 후 느낀 결론부터 이야기하면, 토비의 스프링 책과 마찬가지로 많은 개발자가 이 강의를 보셨으면 하는 바람입니다. 스프링을 공부하면서 토비의 스프링을 접하게 되었고 자연스레 토비님도 알게 되었습니다. 토비의 스프링 책을 읽으려고 하면 주변 개발자들은 "토비의 스프링은 나중에 경력이 생기면 읽어라" 라는 이야기를 했습니다. 당연히 주변 선임 개발자들이 그렇게 이야기하는 이유가 있을 거로 생각했고 결국 토비님의 책을 늦게 읽었습니다. 어느 책에서든 설명하는 기술적인 내용뿐 아니라, 개발하며 개발자가 문제를 직면했을 때 해결해 나가는 인사이트를 받았고, 책을 다 완독하고 나서 '내가 조금 더 일찍 책을 읽었으면 더 좋은 개발자로 성장할 수 있지 않았을까?'라는 아쉬움이 남았습니다. 토비의 스프링 부트도 책과 마찬가지로 기술적인 부분도 다루지만, 웹의 기본 원리도 강의에 포함되면서 초보자들의 진입장벽을 낮췄고, 정말 강의 구성을 섬세하게 하셨다는 생각이 들었습니다. 문제를 제시하고, 그 문제를 해결하고 리팩터링 하면서 테스트 코드를 통해 문제가 없는 것을 확인해주는 과정이 너무 인상 깊었고, 강의 중에 궁금한 점이 생길때 즈음 CCTV로 저를 보고있으신가..? 싶을 정도로 딱 그 궁금한 점을 풀어주시는 부분, 나만의 스프링 부트를 만들어 나가면서 조금씩 '나만의'를 제거하며 스프링 부트로 변환해 가는 과정이 신기했습니다. "나만의"가 사라지면 사라질 수록 스프링 부트는 내 것이 되는 게 아닌가 싶었습니다. 마지막으로 개발하면서 문제를 직면했을 때 동작을 확인하기 위해 Bean들간의 의존성이 어떻게 엮여있는지 파악 후 로직 확인을 하며 약간의 딥다이브를 하게 됩니다. 이때 의존성을 알기 위해서 Break-Point를 걸어서 확인하는데, 그 방법이 아니라 어떤 Bean이 올라왔는지 확인할 수 있도록 알려주셔서 다른 개발자들 또한 딥다이브를 쉽게 할 수 있는 방법을 알려주신 것 같습니다. 토비의 스프링을 읽고 나서 다음 책은 언제 나올지 항상 궁금했었는데, 강의를 통해 토비님을 뵙게 되어서 너무 좋았습니다! 좋은 목소리와 목소리 톤 그리고 쉽게 흡수될 수 있도록 하는 섬세한 설명이 정말 최고였습니다. 주변 초보 개발자분들께도 강의를 추천하며 다음 강의도 정말 기대하겠습니다! 감사합니다 :D
상세한 수강평 감사합니다.
Đánh giá 2
∙
Đánh giá trung bình 5.0
5
스프링을 스프링 부트로 처음 접한 현직자입니다. 스프링 부트를 도구로서 사용하는 데는 문제가 없었습니다. 하지만 항상 스프링 부트가 왜 나왔는지, 어떻게 발전되어왔는지에 대한 가려움이 있었죠. 이 강의는 그 간지러운 부분들을 아주 속속들이 긁어주는 명강의입니다. 가려운 부분을 정말 쉽게 긁어주신 토비님 정말 감사합니다. 👍 (MyXXX 어노테이션들이 스프링 부트의 어노테이션들로 변경되는 부분은 정말 소름이 돋았습니다. 🥶)
평소 가지셨던 궁금증이 잘 풀리고, 부트를 사용하는데 도움이 되었다니 제가 기분이 좋습니다. 부트처럼 문제를 풀어내는 방법을 이해하게 되셨으니 이를 또 잘 응용하실 수 있다면 더욱 좋겠습니다. 감사합니다.
Đánh giá 3
∙
Đánh giá trung bình 3.3
5
스프링 부트에서 마법처럼 편하게 해주는 것들이 실제로 어떻게 되는것인지에 대해서 직접 만들어가면서 이해할수있는 좋은 시간이었고, 그 과정에 진행하는 학습테스트가 너무 좋았던거같습니다. 개인적으로는 전체적으로 스프링 부트 핵심 원리와 개념을 익히는 것도 좋았지만, 1. 간단히 해결할 수 있는 방법으로 만들고는 조금 더 나은 방식으로 리팩터링 2. 리팩터링 하고는 테스트를 통해 이전과 이후가 같은 결과를 보이는가 확인 3. 처음에는 직접 실행시켜가며 결과 확인 했지만, 복잡해지고 반복됨에 따라 자동화된 테스트로 변경 이런 진행방식이 더 흥미로웠고, 많이 배웠습니다. 다음 강의도 기다리고있겠습니다! :)
실전에서도 이와 같은 방식으로 차근차근 문제를 풀어나가시면 좋겠습니다. 과연 그런가 의심이 들면 테스트를 작성해보세요. 감사합니다.
2.086.329 ₫
Hãy khám phá các khóa học khác của giảng viên!
Khám phá các khóa học khác trong cùng lĩnh vực!