Chia Sẻ Khóa Học Java Full Stack Spring Boot Và Angular [Bao Gồm JWT + Cloud] [Khóa 8511 A]
Bạn sẽ tìm hiểu về Spring security, Heroku Cloud Deployment qua Github, PostgreSQL, Hibernate, Lombok, Angular 12, Full Stack Development.
Bạn sẽ học được gì:
- ✓ Spring Boot.
- ✓ Angular.
- ✓ Full Stack Development với Spring Boot và Angular.
- ✓ Cloud Deployment cho Java và NodeJS.
- ✓ Heroku Cloud Deployment.
- ✓ Tìm hiểu kiến thức cơ bản về Angular - Angular Modules, Components, Data Binding và Routing.
- ✓ Role Base Authorization và Authentication.
- ✓ Sử dụng Spring Security để định cấu hình Basic Authentication và JWT.
- ✓ Tìm hiểu sự kỳ diệu của Spring Boot - Auto Configuration, Spring Initializr và Starter Projects.
- ✓ RXJS Observables và Observer.
Trong khóa học này, bạn sẽ tạo một dự án mới là online-book-shopping.
Khi nói đến ứng dụng online-book-shopping, bạn có thể nghĩ rằng bạn sẽ có một trang danh sách sách. Bằng cách nào đó, người dùng hoặc khách hàng sẽ thấy những danh sách sách này và họ có thể mua một trong số chúng. Tất nhiên, khi kết thúc, giao dịch mua này sẽ được lưu trữ và hiển thị sau đó.
Và bạn sẽ thực hiện dự án này bằng Spring Boot, Angular và PostgreSQL.
Trong dự án này, bạn sẽ thực hiện các hoạt động CRUD. Các hoạt động CRUD này sẽ dành cho người dùng và Sách. Bạn sẽ sử dụng người dùng cho các hoạt động đăng nhập, đăng ký và ủy quyền của người dùng. Và bạn sẽ sử dụng sách cho các thao tác tạo, chỉnh sửa, xóa sách.
Các hoạt động CRUD này sẽ được yêu cầu từ Angular. Vì vậy, trên backend, bạn sẽ tạo một cơ sở hạ tầng cho các hoạt động CRUD này và trên frontend, bạn sẽ phục vụ chúng bằng giao diện người dùng.
Dự án của bạn tiếp tục với hoạt động của Người dùng và Sách.
Các hoạt động chính của bạn sẽ là đăng nhập người dùng, đăng ký, danh sách sách, tạo sách, xóa sách, v.v.
Ngoài ra, bạn sẽ tiếp tục với ứng dụng dựa trên role. Vì vậy, bạn sẽ sử dụng các role khác nhau như “Admin”, “User”. Sau đó, bạn sẽ cung cấp các ủy quyền khác nhau cho những người dùng này tùy theo vai trò.
Và tất cả những thứ này sẽ được cung cấp một cách an toàn trong cả Angular và Spring Boot.
Bạn sẽ có hai thành phần chính để thực hiện dự án của mình, đó là server side và client side.
1. Ở Server Side:
Tất nhiên ở đây, thư viện chính của bạn sẽ là Spring-boot. Bạn sẽ triển khai toàn bộ cơ sở hạ tầng trên backend với Spring boot. Nó sẽ cung cấp cấu hình dễ dàng và nhanh chóng cho bạn.
Bạn sẽ triển khai kiến trúc Model View Controller trên dự án của mình.
Spring-security sẽ là một trong những chủ đề chính trong ứng dụng của bạn. Ngoài ra, bạn sẽ sử dụng JWT để cung cấp bảo mật.
Trong Spring Boot, Dữ liệu sẽ được hiển thị cho client dưới dạng một lệnh gọi API nên Spring Rest Controller sẽ được sử dụng để xử lý nó.
Bạn sẽ sử dụng PostgreSQL làm Cơ sở dữ liệu. Bạn cũng có thể sử dụng các cơ sở dữ liệu khác nhưng khi kết thúc nó, bạn sẽ triển khai code của mình cho Heroku. Postgresql có thể được sử dụng miễn phí trên Heroku nên bạn nên chọn điều đó.
Bạn cũng sẽ sử dụng Object Relational Mapping với Java Persistence API và Hibernate.
Bạn có thể ánh xạ các bảng cơ sở dữ liệu của mình thành các đối tượng với hibernate.
Bạn sẽ sử dụng JPA Repository và Crud Repository trong Spring Boot.
Vì vậy, các repository template này sẽ xử lý các hoạt động cơ sở dữ liệu thông thường như lưu, cập nhật, tìm, xóa.
Với Spring Boot, bạn cũng sẽ sử dụng thư viện Lombok để clear code.
Bạn biết rằng bạn không muốn triển khai mã getter, setter, equals và hash. Vì vậy, bạn có thể thoát khỏi nó bằng cách sử dụng Lombok @Data hoặc @Value annotation.
Bạn sẽ sử dụng Gradle Để xử lý tất cả các dependency ở server side.
Đối với tất cả các services của bạn, bạn sẽ tạo cloud deployment với Heroku. Heroku là một framework miễn phí tuyệt vời. Bạn có thể triển khai các dự án spring-boot của mình với một số cấu hình qua github một cách dễ dàng. Vì vậy, vào cuối khóa học, bạn sẽ có một ứng dụng production và bạn sẽ có code trên github mà mọi người đều có thể truy cập được.
Đó là tất cả về Server side.
2. Về Client Side:
Bạn sẽ tạo một ứng dụng angular ở client side và nó sẽ cung cấp một giao diện người dùng thú vị. Vì vậy, bạn sẽ tạo một số trang như home-page, admin dashboard, login page và register-page. Sau đó, bạn sẽ gán các server api cho các trang này và bạn sẽ sử dụng và tạo ra dữ liệu từ giao diện người dùng một cách dễ dàng và thân thiện với người dùng.
Trên Angular, bạn cũng sẽ thực hiện kiến trúc model view controller. Bạn sẽ sử dụng các tính năng thú vị của typescript, v.v.
Vào cuối, bạn sẽ xây dựng nó và phục vụ nó cho heroku. Vì vậy, khi kết thúc khóa học, bạn sẽ có một live application on production.
Cuối cùng nhưng không kém phần quan trọng, bạn cũng sẽ triển khai bảo mật và ủy quyền trên angular. Bạn sẽ làm việc với các role khác nhau và theo các role này, bạn cũng sẽ triển khai các trang unauthorized và not-found trên giao diện người dùng.
Mục lục:
- ✓ 01 Giới thiệu.
- ✓ 02 Thiết lập Môi trường Phát triển.
- ✓ 03 Tổng quan về Các Frameworks và Tool cơ bản.
- ✓ 04 Restful Web Services - Tổng quan.
- ✓ 05 Spring Boot - Backend - Server Side.
- ✓ 06 Tổng quan về Spring Security - Tùy chọn.
- ✓ 07 Security Implementation.
- ✓ 08 JWT Implementation.
- ✓ 09 Đăng nhập Người dùng và Đăng ký Người dùng.
- ✓ 10 Internal API Implementation.
- ✓ 11 Other Endpoints - Rest Controller.
- ✓ 12 Test Spring Boot Application.
- ✓ 13 Multiple Spring Profiles - Development, Production.
- ✓ 14 Cloud Deployment - Heroku.
- ✓ 15 Thiết lập môi trường phát triển cho Client Side.
- ✓ 16 Client Side Implementation.
- ✓ 17 Structured Data - Typescript Models.
- ✓ 18 Form Module, FormItem, FormGroup - SignIn và SignUp Form.
- ✓ 19 Guards.
- ✓ 20 Http và Observables.
- ✓ 21 Admin Dashboard.
- ✓ 22 Other Pages.
- ✓ 23 Production Configuration và Preparation.
- ✓ 24 Cloud Deployment - Heroku.
NHẬN GET EBOOK TRÊN AMAZON THEO YÊU CẦU