Đâ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.
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 tay của chính tôi Hãy nhớ tìm hiểu các nguyên tắc cơ bản của Spring Boot! 🌱
Đôi bốt mùa xuân của Toby
Các tính năng cốt lõi và nguyên tắc hoạt động của Spring Boot
Spring Boot là công cụ giúp bạn phát triển các ứng dụng Spring một cách nhanh chóng và thuận tiện. Nó cho phép bạn bắt đầu phát triển các ứng dụng Spring rất nhanh chóng và thuận tiện, đồng thời xử lý một cách kỳ diệu rất nhiều công việc đằng sau hậu trường.
Spring Boot đã trở thành tiêu chuẩn thực tế để tạo các ứng dụng sử dụng Spring Framework. Tuy nhiên, nếu không biết nguyên lý hoạt động đằng sau sự tiện lợi đó, bạn sẽ gặp phải nhiều hạn chế và rào cản. Khi ứng dụng của bạn phát triển và bạn muốn áp dụng nhiều công nghệ hơn cũng như điều chỉnh chúng cho phù hợp với nhu cầu của mình, bạn cần biết Spring Boot hỗ trợ phát triển Spring như thế nào.
Bạn đã bao giờ nghĩ về điều này chưa? 🤔
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 liệu mình có biết và sử dụng Spring đúng cách hay không .
Sau khi áp dụng những thủ thuật học được từ cộng đồng hoặc qua tìm kiếm , tôi cảm thấy bối rối vì các chức năng hệ thống được tạo bằng Spring Boot đã thay đổi.
Trước đây tôi chỉ phát triển với Spring Framework rồi chuyển sang Spring Boot, và có vẻ như những phương pháp mà tôi biết sử dụng Spring đều trở nên vô dụng .
Tôi không hiểu Spring và Spring Boot khác nhau như thế nào, hay Spring Boot là gì .
Tôi muốn thêm một công nghệ mới vào Spring Boot hoặc thay đổi cách sử dụng nó , nhưng tôi lo lắng về cách thực hiện đúng.
Tôi muốn tạo ra công nghệ hoặc mô-đun chức năng của riêng mình có thể được áp dụng tự động như Spring Boot.
Trong bài giảng 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 cần thiết để học và sử dụng Spring Boot một cách hiệu quả. Bạn sẽ có thể hiểu và sử dụng Spring Boot đúng cách thông qua ba bước dưới đây.
1) Hiểu nguyên lý hoạt động của Spring Boot
Khi đã biết Spring Boot hoạt động như thế nào, bạn sẽ biết được một phương pháp nhất quán áp dụng được cho nhiều công nghệ của Spring Boot, giúp bạn có thể học nhanh và áp dụng chính xác khi giới thiệu các phần công nghệ mới. Bạn không phải lo lắng về việc tìm kiếm các giải pháp rời rạc bằng cách luôn dựa vào tìm kiếm. Nếu bạn tìm hiểu các phương pháp và ứng dụng nhất quán của các công nghệ khác nhau trong Spring Boot, bạn có thể phân tích chính xác các vấn đề và tìm ra giải pháp.
2) Làm bốt lò xo bằng tay của chính mình
Cách tốt nhất để tìm hiểu cách hoạt động của Spring Boot là tự tạo Spring Boot. Spring Boot cũng là một ví dụ tuyệt vời để tìm hiểu cách sử dụng Spring Framework. Bằng cách tự mình làm nó, bạn có thể nghĩ về nền tảng của Spring Boot, các mục tiêu mà nó theo đuổi cũng như cách Spring Framework được sử dụng và tạo ra. Bạn có thể thu được nhiều kiến thức khác nhau về phát triển Spring và Java back-end bằng cách tự tạo mã đơn giản nhưng cốt lõi. Nếu tìm hiểu cách tạo Spring Boot, bạn có thể tạo các module Spring Boot của riêng mình hoặc tạo các công cụ tiện lợi áp dụng công nghệ Spring.
3) Hiểu cách Spring Boot tận dụng Spring Framework
Khi bạn hiểu cách Spring Boot hoạt động, bạn sẽ tìm hiểu cách Spring Boot tận dụng Spring Framework. Ngoài ra, bạn có thể xem xét kỹ hơn và hiểu các tính năng khác nhau của Spring Boot.
Bạn có thể áp dụng Spring Framework trực tiếp vào việc phát triển ứng dụng.
Bạn sẽ có thể xử lý tốt Spring Framework như Spring Boot.
Bạn có thể mô-đun hóa mã của mình theo kiểu Spring Boot và sử dụng lại nó một cách thuận tiện.
Tôi giới thiệu nó cho những người này 🙋
Những người đang sử dụng Spring Boot trong thực tế
Ai muốn biết và sử dụng Spring và Spring Boot tốt hơn
Những người đang cân nhắc chuyển từ Spring sang Spring Boot
Bạn nào muốn học Spring Boot hiệu quả hơn
Hãy tham gia cùng Spring Guru, Toby! 🤗
Nếu bạn có kiến thức cơ bản về ngôn ngữ Java và kinh nghiệm tạo máy chủ cấp Hello World bằng Spring Boot, bạn có thể bắt đầu.
Chúng tôi sẽ giải thích chi tiết về các công nghệ phát triển web Java xuất hiện ở từng giai đoạn phát triển, các nguyên tắc cốt lõi của Spring framework và cách sử dụng công nghệ Spring.
Chúng tôi sẽ giúp bạn phân tích cấu hình của Spring Boot và sử dụng nó một cách chính xác bằng cách tạo code chứa các nguyên tắc hoạt động cốt lõi của Spring Boot.
Bạn sẽ hiểu rõ hơn về Spring Framework.
Bạn học được gì 📚
1. Nhìn vào Spring Boot
Hãy cùng xem tại sao Spring Boot được tạo ra, các tính năng và mục tiêu của nó. Chúng tôi giải thích ý nghĩa của việc Spring Boot không có vùng chứa, ý nghĩa của việc đưa ra quan điểm và lý do tại sao bạn cần hiểu Spring Boot. Chúng tôi cũng đề cập chi tiết đến khái niệm có thể gây nhầm lẫn về vùng chứa.
2. Ứng dụng độc lập
Chúng ta sẽ xem làm thế nào một ứng dụng độc lập, một trong những tính năng của Spring Boot, có thể thực hiện được bằng cách tạo một ứng dụng servlet độc lập và một ứng dụng Spring độc lập. Thông qua đó, chúng ta sẽ tìm hiểu cách tạo ra công nghệ web Spring và cách sử dụng bộ chứa Spring trong quy trình.
3. Tiêm phụ thuộc
Nhắc đến mùa xuân không thể bỏ qua DI. Chúng ta sẽ xem xét khái niệm về DI, cách Spring hỗ trợ DI và cách áp dụng nó vào thử nghiệm. Chúng ta hãy sử dụng Spring container để có thể áp dụng DI cho code đang tạo. Chúng tôi cũng xem xét việc áp dụng các trình trang trí và proxy bằng DI.
4. Ứng dụng dựa trên cấu hình tự động
Chúng ta sẽ xem xét 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. Chúng ta hãy xem cấu hình tự động được Spring Boot giới thiệu và cấu hình người dùng do nhà phát triển tạo. Bạn sẽ có thể hiểu cấu trúc của các ứng dụng được phát triển bằng Spring Boot. Bạn có thể thấy qua quá trình phát triển thực tế cách cấu hình tự động của Spring Boot được tạo bằng các công nghệ Spring khác nhau. Bạn cũng sẽ tìm hiểu cách sử dụng các chú thích Spring khác nhau được Spring Boot sử dụng.
5. Tự động cấu hình có điều kiện
Khám phá cách Spring Boot tận dụng công nghệ đăng ký đậu có điều kiện @Conditional của Spring để tự động cấu hình. Bạn có thể trực tiếp trải nghiệm cách thông tin cấu hình ứng dụng thay đổi bằng cách thay đổi các điều kiện khác nhau. Chúng ta cũng sẽ tìm hiểu xem việc đưa cấu hình Bean trực tiếp vào Spring Boot ảnh hưởng như thế nào đến việc tự động cấu hình.
6. Cấu hình tự động sử dụng cài đặt bên ngoài
Cấu hình tự động tiện lợi của Spring Boot không hạn chế sự phát triển theo những cách quá cứng nhắc và phiến diện. Chúng ta sẽ xem xét cách sử dụng các cài đặt bên ngoài để tùy chỉnh dễ dàng và linh hoạt công nghệ do Spring Boot cung cấp thông qua triển khai trực tiếp. Chúng ta cũng sẽ tìm hiểu về tính trừu tượng của Môi trường của Spring, mức độ ưu tiên của ứng dụng nguồn thuộc tính và cách sử dụng trình giữ chỗ. Bạn có thể thấy nhiều thuộc tính được liệt kê trong application.properties được kết nối với Bean cấu hình tự động như thế nào và chúng được nhóm theo đơn vị nào.
7. Phát triển cấu hình tự động Spring JDBC
Thiết kế và triển khai cấu hình tự động của riêng bạn cho công nghệ Spring JDBC. Điều này sẽ giúp bạn tìm hiểu các chiến lược để hiểu cấu trúc tự động cấu hình được áp dụng cho Spring Boot. Giống như Spring Boot, bạn có thể trải nghiệm cách thiết kế với nhiều tùy chọn và cách áp dụng các chức năng phù hợp thông qua cấu hình tự động tùy theo điều kiện trong khi tạo mã thực tế.
8. Nhìn kỹ hơn về Spring Boot
Ngay cả khi bạn chuyển đổi mã giống Spring Boot mà bạn đã viết cho đến nay sang Spring Boot, bạn sẽ thấy mã ứng dụng vẫn hoạt động như cũ. Bây giờ, khi bạn phát triển bằng Spring Boot, bạn có thể biết được những gì đang diễn ra bên dưới. Thay vì bị cuốn vào vô số cấu hình tự động do Spring Boot cung cấp, bạn sẽ học cách phân tích nó từng bước một. Sau đó, chúng tôi phân tích mã cấu hình tự động xuất hiện trong lõi Spring Boot, Spring Web và JDBC.
Những lưu ý trước khi tham gia khóa học 📢
Môi trường phòng thí nghiệm
Hệ điều hành và phiên bản (OS) : Cần có hệ điều hành máy tính để bàn có thể sử dụng công nghệ Java như Windows, Mac hoặc Linux.
Các công cụ được sử dụng: Bạn sẽ cần một IDE, một môi trường phát triển cho phép bạn cài đặt JDK 11 cũng như phát triển và chạy các dự án Java.
Khóa học sử dụng phiên bản IntelliJ IDEA Ultimate.
Bạn cũng có thể sử dụng phiên bản Cộng đồng IntelliJ IDEA miễn phí hoặc SpringSource Tool Suite (STS).
tài liệu học tập
Bạn có thể lấy mã ví dụ từ GitHub. Có các cam kết cho từng bước của lớp, vì vậy bạn có thể kiểm tra và xem những phần bạn muốn.
Bạn có thể tải xuống 130 trang slide được sử dụng trong bài giảng dưới dạng tệp PDF.
Các bài giảng có giải thích ngắn gọn và tài liệu tham khảo cho mỗi lớp được cung cấp ở định dạng PDF cho mỗi phần. Điều này có thể tiếp tục được cập nhật.
Kiến thức và biện pháp phòng ngừa của người chơi
Bạn cần có đủ kiến thức ngôn ngữ để hiểu mã viết bằng ngôn ngữ Java. Vui lòng làm quen với các chú thích, lớp ẩn danh của Java 5 cũng như các luồng và biểu thức lambda của Java 8 .
Nếu tò mò về toàn bộ quy trình, bạn có thể xem toàn bộ video mà không cần làm theo ví dụ. Sau đó, chúng tôi khuyên bạn nên làm theo từng bước một các ví dụ và cố gắng tự cải thiện hoặc áp dụng mã.
Mình sẽ cập nhật video về ví dụ nâng cấp lên Spring Boot 3.0.
Nếu có phần nào cần giải thích thêm sẽ bổ sung thêm các video liên quan.
Câu hỏi dự kiến Hỏi đáp 💬
Q. Tại sao tôi cần hiểu Spring Boot hoạt động như thế nào?
Bạn không cần phải biết mọi công nghệ bạn sử dụng hoạt động như thế nào. Tuy nhiên, bạn có thể sử dụng Spring Boot tốt hơn một khi bạn biết cách hoạt động của nó. Spring Boot xử lý nhiều tác vụ một cách tự động và vô hình, và nếu hiểu được điều này, bạn có thể tận dụng những tính năng do Spring Boot cung cấp mà không bỏ lỡ. Bạn cũng có thể mở rộng nó để thực hiện bất kỳ tác vụ nào bạn yêu cầu trong ứng dụng của mình. Học cách sử dụng Spring Framework có trong Spring Boot cũng rất hữu ích trong việc 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 một bài giảng được không?
Nó giới thiệu công nghệ Spring Framework được Spring Boot sử dụng và cũng giải thích các khái niệm cốt lõi của Spring. Nó bao gồm cách hoạt động của các vùng chứa Spring, DI và các mẫu thiết kế có thể áp dụng. Tất nhiên, sau khi xem bài giảng này, khuyên bạn nên nghiên cứu sâu hơn về công nghệ hoặc nguyên lý hoạt động của Spring framework mà bạn quan tâm.
Hỏi. Khóa học sử dụng Spring Boot 2.7 có hữu ích không nếu tôi sử dụng phiên bản 3.0 mới phát hành gần đây?
Tất cả các ví dụ trong bài giảng cũng hoạt động trong Spring Boot 3.0 chỉ bằng cách sửa đổi phiên bản thư viện và tên gói thay đổi một chút. Các ví dụ di chuyển từ Spring Boot 3.0 cũng được đề cập trong bài giảng.
Giới thiệu người chia sẻ kiến thức ✒️
Lịch sử
Ông có 30 năm kinh nghiệm phát triển thực tế và 20 năm kinh nghiệm phát triển Spring framework.
Chúng tôi đã phát triển nhiều hệ thống và dịch vụ khác nhau trong các lĩnh vực sản xuất, hậu cần, tài chính, truyền thông di động, thương mại, giáo dục và dịch vụ.
Tác giả cuốn sách Toby's Spring 3.0 và 3.1.
Anh thành lập Korea Spring User Group (KSUG) và đã hoạt động tích cực trong cộng đồng nhà phát triển trong một thời gian dài.
Khuyến nghị cho những người này!
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+)
Xin chào Đây là
13,065
Học viên
644
Đánh giá
305
Trả lời
5.0
Xếp hạng
7
Các khóa học
호주에 살고 있는 소프트웨어 개발자입니다. 30년간 다양한 분야의 시스템과 서비스를 개발해본 경험이 있습니다.
스프링 프레임워크와 관련 기술을 좋아하고 JVM 기반 언어를 주로 사용합니다.
한국스프링사용자모임(KSUG)을 설립하고 활동했고, 토비의 스프링이라는 책을 쓰기도 했습니다.
안녕하세요. 저는 만 7년 이상 스프링 실무경력을 가지고 있는 개발자입니다.
강의 수강 후 느낀 결론부터 이야기하면, 토비의 스프링 책과 마찬가지로 많은 개발자가 이 강의를 보셨으면 하는 바람입니다.
스프링을 공부하면서 토비의 스프링을 접하게 되었고 자연스레 토비님도 알게 되었습니다. 토비의 스프링 책을 읽으려고 하면 주변 개발자들은 "토비의 스프링은 나중에 경력이 생기면 읽어라" 라는 이야기를 했습니다. 당연히 주변 선임 개발자들이 그렇게 이야기하는 이유가 있을 거로 생각했고 결국 토비님의 책을 늦게 읽었습니다. 어느 책에서든 설명하는 기술적인 내용뿐 아니라, 개발하며 개발자가 문제를 직면했을 때 해결해 나가는 인사이트를 받았고, 책을 다 완독하고 나서 '내가 조금 더 일찍 책을 읽었으면 더 좋은 개발자로 성장할 수 있지 않았을까?'라는 아쉬움이 남았습니다.
토비의 스프링 부트도 책과 마찬가지로 기술적인 부분도 다루지만, 웹의 기본 원리도 강의에 포함되면서 초보자들의 진입장벽을 낮췄고, 정말 강의 구성을 섬세하게 하셨다는 생각이 들었습니다. 문제를 제시하고, 그 문제를 해결하고 리팩터링 하면서 테스트 코드를 통해 문제가 없는 것을 확인해주는 과정이 너무 인상 깊었고, 강의 중에 궁금한 점이 생길때 즈음 CCTV로 저를 보고있으신가..? 싶을 정도로 딱 그 궁금한 점을 풀어주시는 부분, 나만의 스프링 부트를 만들어 나가면서 조금씩 '나만의'를 제거하며 스프링 부트로 변환해 가는 과정이 신기했습니다. "나만의"가 사라지면 사라질 수록 스프링 부트는 내 것이 되는 게 아닌가 싶었습니다.
마지막으로 개발하면서 문제를 직면했을 때 동작을 확인하기 위해 Bean들간의 의존성이 어떻게 엮여있는지 파악 후 로직 확인을 하며 약간의 딥다이브를 하게 됩니다. 이때 의존성을 알기 위해서 Break-Point를 걸어서 확인하는데, 그 방법이 아니라 어떤 Bean이 올라왔는지 확인할 수 있도록 알려주셔서 다른 개발자들 또한 딥다이브를 쉽게 할 수 있는 방법을 알려주신 것 같습니다.
토비의 스프링을 읽고 나서 다음 책은 언제 나올지 항상 궁금했었는데, 강의를 통해 토비님을 뵙게 되어서 너무 좋았습니다! 좋은 목소리와 목소리 톤 그리고 쉽게 흡수될 수 있도록 하는 섬세한 설명이 정말 최고였습니다.
주변 초보 개발자분들께도 강의를 추천하며 다음 강의도 정말 기대하겠습니다!
감사합니다 :D
스프링을 스프링 부트로 처음 접한 현직자입니다. 스프링 부트를 도구로서 사용하는 데는 문제가 없었습니다. 하지만 항상 스프링 부트가 왜 나왔는지, 어떻게 발전되어왔는지에 대한 가려움이 있었죠. 이 강의는 그 간지러운 부분들을 아주 속속들이 긁어주는 명강의입니다.
가려운 부분을 정말 쉽게 긁어주신 토비님 정말 감사합니다. 👍
(MyXXX 어노테이션들이 스프링 부트의 어노테이션들로 변경되는 부분은 정말 소름이 돋았습니다. 🥶)
스프링 부트에서 마법처럼 편하게 해주는 것들이 실제로 어떻게 되는것인지에 대해서 직접 만들어가면서 이해할수있는 좋은 시간이었고, 그 과정에 진행하는 학습테스트가 너무 좋았던거같습니다.
개인적으로는 전체적으로 스프링 부트 핵심 원리와 개념을 익히는 것도 좋았지만,
1. 간단히 해결할 수 있는 방법으로 만들고는 조금 더 나은 방식으로 리팩터링
2. 리팩터링 하고는 테스트를 통해 이전과 이후가 같은 결과를 보이는가 확인
3. 처음에는 직접 실행시켜가며 결과 확인 했지만, 복잡해지고 반복됨에 따라 자동화된 테스트로 변경
이런 진행방식이 더 흥미로웠고, 많이 배웠습니다.
다음 강의도 기다리고있겠습니다! :)