Giảm 35% Khóa Học Spring MVC còn 949k   | Ưu Đãi Đặc Biệt Cho Học Viên Mới.
Kết thúc trong  0h 0m 0s .
Java Spring REST Ultimate For Beginners
Học Spring RESTful APIs Chưa Từng Dễ Tới Vậy
 (66 đánh giá)    349 học viên
Ngôn ngữ: Tiếng Việt
Tags: BACKEND
Tác giả : Hỏi Dân IT
image outstanding course
Click để xem video demo kết quả đạt được khi kết thúc khóa học
Java Spring REST Ultimate For Beginners
Học Spring RESTful APIs Chưa Từng Dễ Tới Vậy
 (66 đánh giá) 349 học viên
Ngôn ngữ: Tiếng Việt
Tags: BACKEND
Tác giả : Hỏi Dân IT
949.000
1.499.000-37%
Cam kết mua khóa học 1 lần, học mãi mãi, và nhận cập nhật miễn phí!

Khóa học này bao gồm:
  • 25 giờ video theo yêu cầu
  • 140 videos hướng dẫn
  • 01 tài liệu hướng dẫn theo từng video
  • Quyền truy cập đầy đủ suốt đời
  • Truy cập trên thiết bị di động và TV
Những gì bạn sẽ học
  • Xây dựng niềm đam mê với lập trình Java
  • Debug Ứng Dụng Java Spring Siêu Dễ (đặc biệt Spring Security)
  • Nắm vững kiến thức của Spring với RESTful
  • Học và hiểu rõ cơ chế Spring Security và Stateless với JWT
  • Document API với Swagger
  • Gửi Email (theo template) và sử dụng Cron Job với Spring

Video Demo thành quả đạt được sau khi kết thúc khóa học:

Nội dung khóa học
14 chương • 139 bài giảng • 25 giờ tổng thời lượng
Chapter 1: Bắt buộc xem
5 bài giảng
Hướng dẫn sử dụng khóa học hiệu quả
#1. Hướng dẫn sử dụng khóa học này hiệu quả
#2. Tài liệu của khóa học
#3. Demo kết quả đạt được
#4. Yêu cầu để học được khóa học này
#5. Về Tác giả
Cài đặt môi trường thực hiện dự án
#6. Cài Java version 17
#7. Cài đặt Visual Studio Code
#8. Cấu hình Visual Studio Code
#8.1 Lưu ý quan trọng về "Dấu Cách"
#9. Tại sao mình dùng VScode ?
#10. Cài đặt và sử dụng Git
#11. Cài đặt Google Chrome
#12. Cài đặt Postman
#13. Cài đặt MySQL Workbench
Làm quen với Java Spring Framework sử dụng REST
#14. Setup Dự Án Thực Hành
#15. Quá trình tạo dự án Spring
#16. Cách đẩy dự án lên Git
#17. Cấu trúc dự án thực hành
#18. Spring Build Tool
#19. My Goal ?
Sử dụng Spring REST làm tính năng CRUD
#20. Tổng quan các kiến thức sẽ học
#21. JSON
#22. API là gì
#23. Status code
#24. Test API với Postman
#25. Viết Api đầu tiên
#26. @RequestBody
#27. Java JSON Data Binding
#28. @PathVariable
#29. Bài tập Get User
#30. Chữa Bài Tập Get User
#31. Bài tập Update User
#32. Chữa Bài Tập Update User
#33. Tổng Kết Về RESTful (Basic)
#34. Spring Data Rest Project (Bonus)
Xử lý phản hồi của API với Response Entity
#35. Tại sao cần Response Entity ?
#36. HTTP Status Code hay dùng
#37. Update Status Code & Body cho APIs
#38. Giải thích code (Bonus)
Xử lý ngoại lệ trong quá trình sử dụng API
#39. Throw Exception
#40. Phạm Vi của Exception
#41. @ControllerAdvice
#42. Format Response before Sending (Part 1)
#43. Format Response before Sending (Part 2)
Bảo vệ APIs với cơ chế JWT của mô hình Stateless
#44. Mô hình Stateful và Stateless
#45. Chúng ta đang đứng ở đâu ?
#46. Cơ chế xác thực của Stateless
#47. JSON Web Token (JWT)
#48. Cơ chế mặc định của Spring Security
#49. OAuth Flow
#50. Spring và OAuth
#51. Login Flow
#52. loadUserByUsername
#53. Debug Code (Bonus)
#54. Cơ chế tạo JWT Token
#55. Tạo Key (Part 1)
#56. Tạo Key (Part 2)
#57. Bảo Vệ Endpoint (API) với JWT
#58. Xử lý JWT Exception
#59. Tổng kết về JWT
Phân tích và thiết kế dự án thực hành của khóa học
#60. Giới thiệu dự án thực hành
#61. Phân tích Model cho Databases
#62. Setup dự án thực hành Frontend
#63. CORS là gì ?
#64. Cách fix CORS
#65. Spring và CORS
Thực hiện CRUD với model Company
#66. Model Company
#67. Bài Tập Create Company
#68. Chữa Bài Tập Create Company
#69. Before Save Entity với JPA (Part 1)
#70. Before Save Entity với JPA (Part 2)
#71. Bài Tập Get/Update/Delete Company
#72. Chữa Bài Tập Get/ Update/Delete Company
#73. Query với Pagination
#74. Giới thiệu về Specification
#75. Query với Filter (Part 1)
#76. Query với Filter (Part 2)
#77. Customize Message với Annotation (Bonus)
#78. Versioning API
Thực hiện CRUD với model User
#79. Update User Model
#80. Bài tập CRUD User
#81. Chữa Bài tập CRUD User
#82. API Login
#83. Set Cookies (Part 1)
#84. Set Cookies (Part 2)
#85. API Get Account (F5 - Refresh)
#86. Giải thích cơ chế JWT và Spring Security (Bonus)
#87. API Refresh Token (Part 1)
#88. API Refresh Token (Part 2)
#89. Bài tập API Logout
#90. Nguyên tắc check code frontend
#91. Test giao diện frontend
Bài tập thực hành tạo module Job/Resume: CRUD job/resume, kết hợp việc sử dụng upload/download file với Java Spring
#92. Code Refactoring
#93. Model Relationship (Associations)
#94. Bài Tập Update Model User/Company
#95. Model Job
#96. Bài Tập CRUD Job
#97. Chữa Bài tập CRUD Job
#98. Về Upload File
#99. Read File From Path
#100. Upload File (Part 1)
#101. Upload File (Part 2)
#102. Download a File (Bonus)
#103. Model Resume
#104. Bài Tập CRUD Resume
#105. Chữa Bài tập CRUD Resume
#106. Test giao diện Frontend (Part 1)
#107. Test giao diện Frontend (Part 2)
Bài tập thực hành tạo module Permission/roles : CRUD Permissions/role, kết hợp áp dụng Spring Life Cycle để tạo fake data cho dự án Backend.
#108. Model Permission & Roles
#109. Bài tập CRUD Permissions & Roles
#110. Chữa Bài tập CRUD Permissions & Roles
#111. Update User với Permissions & Roles
#112. Tạo Fake Data với SQL
#113. Test Giao Diện Frontend (Part 1)
#114. Tạo Sample Data (Part 1)
#115. Tạo Sample Data (Part 2)
#116. Test Giao Diện Frontend (Part 2)
#117. Cách xử lý phân quyền tại Frontend (Bonus)
#118. Interceptor
#119. Test Giao Diện Frontend (Part 3)
Bài tập CRUD subscribers, đồng thời tìm hiểu cách gửi email với Nest.js sử dụng “template xây dựng sẵn”, kết hợp với “cron jobs” để gửi email tự động.
#120. Model Subscribers
#121. Bài tập CRUD Subscribers
#122. Chữa bài tập CRUD Subscribers
#123. Cấu hình Send Email với Spring
#124. Hello Word với Spring Email
#125. Send Email với Template (Part 1)
#126. Send Email với Template (Part 2)
#127. Send Email với Template (Part 3).
#128. Cron Job (Part 1)
#129. Cron Job (Part 2)
#130. Nhận xét về dự án Frontend
Tổng kết các kiến thức đã học và hướng dẫn tối ưu hóa dự án backend Java Spring
#131. Xử lý Global Exception
#132. Swagger
#133. Logging
#134. Build Dự Án với Docker
#135. Nhận xét về cách code dự án Spring
#136. Cách tự tạo dự án Spring Restful của bạn
#137. Nhận xét về dự án thực hành
#138. What's next ? Học gì tiếp theo

Mô tả

1. Công nghệ sử dụng


Ý tưởng: tương tự khóa Nest.js, điểm khác biệt là dùng Java thay vì Typescript (Nodejs):

https://hoidanit.vn/khoa-hoc/nestjs-voi-typescript-mongodb-sieu-de-64686ec6fb456bbb90663dd6.html


Backend: Java Spring

  • Spring Boot : cấu hình và chạy dự án Spring một cách nhanh chóng
  • Spring Security: xác thực (authentication) và phân quyền người dùng (authorization) với JWT (json web token) sử dụng cơ chế oauth2 (không viết custom Filter)
  • Spring JPA : xử lý và thao tác với cơ sở dữ liệu database với ORM


Frontend : React Vite (typescript) được cung cấp sẵn. Không học code React trong khóa học này


Database: MySQL (phần mềm MySQL Workbench)


Build Tool: Gradle - Kotlin


Các kỹ năng khác:

  • Viết code theo mô hình Dependency Injection
  • Thực hành kỹ năng Debug với Spring (đặc biệt là Spring Security)
  • Quản lý API với Swagger
  • Gửi email theo template, cron job để tự động gửi email
  • Sử dụng MySQL với ORM (Spring JPA), hỗ trợ filter với Specification (Paging/Sorting)


2. Học viên nào có thể học ?


Học viên cần trang bị các kiến thức sau trước khi theo học:

  • Biết cú pháp của Java và có tư duy lập trình hướng đối tượng
  • Đã có kiến thức cơ bản về Spring, bao gồm:
  • Viết code theo mô hình Controller - Service - Repository
  • Sử dụng Spring JPA để query dữ liệu
  • Sử dụng mô hình MVC với Spring


Học viên bắt đầu từ số 0, hoặc chưa từng code Spring, theo học không phù hợp, tham khảo: https://hoidanit.vn/khoa-hoc/java-spring-mvc-ultimate-for-beginners-65ce0b770c05f4450fbd86ac.html


3. Về source của cả khóa học

Source code của cả khóa học ĐƯỢC CUNG CẤP.


Mỗi video thực hành luôn có source code đính kèm trong tài liệu khóa học


Yên tâm 1 điều là:

- Nếu bạn code theo video, 100% sẽ có được thành quả

- Source code được update theo thời gian. 1 khi bugs được học viên report 

=> sẽ được fix ngay lập tức


4. Triển khai dự án

Dự án được chạy tại localhost và không triển khai lên hosting, vì:

- rất ít hosting FREE hỗ trợ java + mysql

- hosting FREE không lưu trữ ảnh upload


Tuy nhiên, trong khóa học có hướng dẫn build với Docker

=> nếu bạn muốn triển khai thực tế, mua vps, cài docker và triển thôi


Tham khảo (hướng triển khai với docker): https://hoidanit.vn/khoa-hoc/ultimate-guide-to-deploy-react-nodejs-640bee82f7099c369b3bc6a4.html


5. Về testing

Khóa học này không hướng dẫn viết testcase


6. Về cách support khi gặp bug

có 3 cách:

1. bạn đặt câu hỏi trực tiếp trên udemy


2. đăng lên group Facebook dành cho học viên udemy


3. inbox trực tiếp Facebook Page: https://www.facebook.com/askITwithERIC/

ĐÁNH GIÁ KHÓA HỌC

4.8 trên 5

Không có nội dung tồn tại

Tại sao lại lựa chọn khóa học của Hỏi Dân IT ?

Người khác hay so sánh và "làm màu" khóa học của bản thân, cho rằng người ta là nhất, đồng thời hạ thấp các khóa học đang có trên thị trường. Điều này sẽ dẫn tới tình trạng "ảo tưởng sức mạnh về khóa học" và bản thân bạn chính là những "con gà bị lùa."

Mình không thích điều trên, vì mình biết, chẳng ai là hoàn hảo cả. Mỗi khóa học đều có điểm hay và dở của nó. No one is perfect, right ?

Thành ra, bố cục khóa học của mình rất đơn giản. Luôn có video demo thành quả đạt được, cùng với giáo án để bạn hình dung về khóa học.

Mình không thích viết nhiều, vì chỉ cần video demo (hoặc hình ảnh), nó làm đơn giản hóa vấn đề so với việc miêu tả "làm màu" khóa học.

Điều bạn cần làm, để tránh tình trạng "bị lùa gà", chính là 7 nguyên tắc mà mình hay áp dụng:

  • 1. Xem kỹ video demo và giáo án khóa học để có góc nhìn tổng quát về các kiến thức sẽ học.
  • 2. Mình chỉ chịu trách nhiệm truyền đạt kiến thức - Tức là nội dung giáo án như nào, khóa học sẽ truyền đạt như vậy
  • 3. Học xong khóa học của mình, không đồng nghĩa với việc bạn trở thành siêu nhân hay thiên tài. Bạn cần tự làm dự án của bản thân để chuyển hóa kiến thức.
  • 4. Mình không cam kết học xong khóa học, kiếm được việc làm lương xxx. Tất cả các khóa học miêu tả như vậy, toàn là "lùa gà", why ? Vì người ta không là công ty tuyển dụng bạn, ok ?
  • 5. Việc học khóa học của mình, giống việc bạn đang sử dụng thực phẩm chức năng, không phải là thuốc chữa bệnh. Có nghĩa là, mình cho bạn "cần câu cơm", còn câu được cơm, cá... hay gì, là do bạn quyết định
  • 6. Cần tư vấn giải đáp trực tiếp, inbox Facebook mình hỗ trợ
  • 7. Mình có nguyên một mục tư vấn các câu hỏi thường gặp, các bạn có thể xem tại đây

Và, có một vài sự thật mà bạn chưa biết về "Hỏi Dân IT":

  • 1. Mình tốt nghiệp HUST (back khoa Hà Nội) chuyên ngành CNPM hệ kỹ sư (Software Engineer). Với 3+ năm kinh nghiệm của dân "đúng ngành", và làm lĩnh vực tài chính (or ngân hàng)
  • 2. Bạn có thể học từ mình những kinh nghiệm của người làm để rút ngắn quãng đường trở thành senior (không chỉ kỹ năng code)
  • 3. Mình có Youtube Hỏi Dân IT để chia sẻ kiến thức IT miễn phí (hơn 40k subscribers)
  • 4. Điểm Rating instructor trên Udemy là 4.8 (max là 5), với 3000+ students. Bạn có thể kiểm tra tại Udemy Profile của mình
  • 5. Nếu bạn muốn nói chuyện với mình, có thể xem mình livestream trực tiếp tối thứ 2 & thứ 5 hàng tuần trên Youtube Hỏi Dân IT :v
image outstanding course
Click để xem video demo kết quả đạt được khi kết thúc khóa học
949.000
1.499.000-37%
Cam kết mua khóa học 1 lần, học mãi mãi, và nhận cập nhật miễn phí!

Khóa học này bao gồm:
  • 25 giờ video theo yêu cầu
  • 140 videos hướng dẫn
  • 01 tài liệu hướng dẫn theo từng video
  • Quyền truy cập đầy đủ suốt đời
  • Truy cập trên thiết bị di động và TV