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 RESTful APIs - Xây Dựng Backend với Spring Boot
Học Spring RESTful APIs Chưa Từng Dễ Tới Vậy
 (112 đánh giá)    677 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 RESTful APIs - Xây Dựng Backend với Spring Boot
Học Spring RESTful APIs Chưa Từng Dễ Tới Vậy
 (112 đánh giá) 677 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 - thời gian học mãi mãi!

Khóa học này bao gồm:
  • 38 giờ video theo yêu cầu
  • 236 videos hướng dẫn
  • 01 tài liệu hướng dẫn theo từng video
  • Thời gian xem khóa học 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
  • Thực hành Spring Boot viết backend chuyên nghiệp
  • Viết Unit Test và Integration Test kiểm thử RESTful API

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

Nội dung khóa học
21 chương • 233 bài giảng • 38 giờ tổng thời lượng
X - Chapter 1: Bắt buộc xem - Không bỏ qua chương học này
8 bài giảng
Hướng dẫn sử dụng khóa học hiệu quả, đạt chất lượng cao nhất
#1. Hướng Dẫn Sử Dụng Khóa Học Hiệu Quả
#2. Hướng Dẫn Quyền Truy Cập Tài Liệu Khóa Học
#3. Hướng Dẫn Quyền Truy Cập Source Code
#4. Hướng Dẫn Tải Source Code Theo Từng Video
#5. Demo kết quả đạt được
#6. Về Quyền Tác Giả
#7. Cách Dùng Udemy - Hỗ Trợ Hỏi Đáp Q&A
#8. Thông Tin Tác Giả Hỏi Dân IT
Cài đặt & chuẩn bị môi trường thực hiện dự án
#9. Chuyện Cài Đặt Công Cụ (Bắt Buộc Xem)
#10. Cài Đặt & Cấu Hình Java
#11. Cài Đặt IDE Code Java Spring
#12. Cài đặt VSCode
#13. Cài đặt Node.JS
#14. Cài đặt Postman
#15. Cài đặt Git
#16. Cài đặt Google Chrome
Cung cấp một bức tranh tổng quát về môi trường và cách học dự án với Java Spring. Viết chương trình Hello World đầu tiên
#17. Tổng quan về chapter
#18. Việc Làm của Spring (Java)
#19. Học Spring Framework hay Spring Boot ?
#20. Tài liệu của Spring
#21. My Goal ???
#22. Setup Dự Án Thực Hành
#23. Cách mình base dự án thực hành (Extra)
#24. Hello World với Spring
#25. Setup Spring Boot Devtool
Cấu hình database và ôn tập lại các kiến thức trọng tâm của Spring Data JPA, giúp thao tác với dữ liệu của ứng dụng
#26. Tổng quan về chapter
#27. Spring Data JPA là gì ?
#28. Cài Đặt MySQL Workbench
#29. Kết nối Spring với Database
#30. Tạo Entity Todo
#31. Kiến trúc phân lớp (Layered Architecture)
#32. Repository (Extra)
#33. Tạo Todo (Create)
#34. Lấy danh sách Todos (Read)
#35. Cập nhật Todo (Update)
#36. Xóa Todo (Delete)
Tìm hiểu về cách sử dụng Spring để viết Restful APIs
#37. Tổng quan về chapter
#38. API là gì ?
#39. Restful API là gì ?
#40. Phân biệt @Controller và @RestController
#41. GET Method - @GetMapping
#42. ResponseEntity
#43. Get All Todos API
#44. Quy tắc đặt tên URL trong RESTful API
#45. Get a Todo API - @PathVariable
#46. POST Method - @PostMapping
#47. Create a Todo API - @RequestBody
#48. PUT Method - @PutMapping
#49. Update a Todo API
#50. Phân biệt PUT và PATCH
#51. DELETE Method - @DeleteMapping
#52. Delete a Todo API
Hướng dẫn viết testcase cơ bản nhất (Unit Test, Integration Test) để test API với Spring
#53. Tổng quan về chapter
#54. Tại sao viết Code cần phải Test ?
#55. Có bao nhiêu loại test ?
#56. Demo Test với ứng dụng JHipster
#57. Viết Unit Test Cơ Bản
#58. Quy trình viết Unit Test
#59. Unit Test với JUnit và Mockito (Part 1)
#60. Unit Test với JUnit và Mockito (Part 2)
#61. Integration Test
#62. Setup Test Database với Spring Profile
#63. Quy trình viết Integration Test
#64. Jackson và Object Mapper (Extra)
#65. Viết Integration Test (Part 1)
#66. Viết Integration Test (Part 2)
#67. Tối ưu Integration Test
#68. Các loại test khác có thể gặp
Thực hành dự án fullstack 01 (sử dụng Java Spring và React)
#69. Tổng quan về chapter
#70. Viết code Spring theo Implements
#71. Thực hành viết Service với Implements
#72. Format Response
#73. Xử lý Exception
#74. Xử lý Validation
#75. Test APIs với Integration Test
#76. Test thành quả đạt được (full frontend + backend)
#77. Frontend: Setup dự án thực hành
#78. Frontend: Chia Layout
#79. Frontend: Tạo Table Users
#80. Frontend: Cách gọi API của Backend
#81. Frontend: CORS là gì ?
#82. Backend: Fix Lỗi CORS
#83. Frontend: Hiển thị danh sách Users
#84. Frontend: Modal Create User
#85. Frontend: Tạo Mới User
#86. Frontend: Update User
#87. Frontend: Delete User
#88. Nhận xét về dự án thực hành 01
Hướng dẫn sử dụng khóa học hiệu quả
#1. Cách Học Project Y
#2+3 Demo kết quả đạt được
#4. Hướng Dẫn Tải Source Code Theo Từng Video
#5. Yêu cầu để học được khóa học này
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
#12.1 Cài Đặt Spring Tool Suite
#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
#14.1 Cách Chạy Dự Án với Spring Tool Suite (Gradle) (Extra)
#14.2 Fix Lỗi DevTools Không Hoạt Động (Extra)
#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 (Extra)
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 (Extra)
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)
#43.1 RestResponse cannot be cast to class String (Extra)
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 (Extra)
#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 (Extra)
#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 (Extra)
#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 (Extra)
#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 (Extra)
#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
#139. Suy Nghĩ Về Chuyện Thực Tập & Làm Fresher (Extra)
#140. Giải Thích Về Lỗi RestResponse cannot be cast to class String
#141. Cấu Hình Lombok cho STS (Nếu Gặp Lỗi)

Mô tả

Spring Framework là công cụ rất nổi tiếng trong cộng đồng Java, và một trong các tác dụng cùa nó là xây dựng một website hoàn chỉnh và chuyên nghiệp.

Bằng cách sử dụng Java Spring là backend để cung cấp API (restful api), chúng ta có thể kết hợp với frontend Framework (Angular/React/Vue) để tạo nên một website có tính tùy chỉnh cao.


Khóa học này bao gồm 02 dự án thực hành, hỗ trợ học Spring một cách đầy đủ, tránh tình trạng bị hổng kiến thức:


I.Dự án thực hành 01 (Project X)

Mục tiêu: ôn tập Spring từ số 0, hướng dẫn cách học đúng, và học đầy đủ Spring để viết backend Restful API chuyên nghiệp

Công nghệ sử dụng:

  • Spring Boot: cấu hình và chạy dự án Spring một cách nhanh chóng
  • Spring JPA: xử lý và thao tác với cơ sở dữ liệu database
  • Spring Test: viết unit test, integration test để kiểm thử Restful API


Frontend: React Vite (typescript) được code từ số 0, thực hành fullstack (React/Spring)

Build Tool: Maven


II.Dự án thực hành 02 (Project Y)

Công nghệ sử dụng

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)
  • Spring JPA : xử lý và thao tác với cơ sở dữ liệu database


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

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
  • Quản lý API với Swagger
  • Gửi email theo template
  • Sử dụng cơ sở dữ liệu quan hệ MySQL (phần mềm MySQL Workbench)


III. 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



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

ĐÁ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 5+ năm kinh nghiệm của dân "đúng ngành", tập trung vào 3 lĩnh vực chính là chứng khoán (stock market), ngân hàng (banking) và tài chính tín dụng (finance).
  • 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 70.000+ subscribers)
  • 4. Điểm Rating instructor trên Udemy là 4.8 (max là 5), với 7.000+ 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
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 - thời gian học mãi mãi!

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