Giới thiệu với các bạn Khóa học Udemy: viết ứng dụng web bán hàng với Java Spring 6 + Angular 17:
Link khóa học, hướng dẫn dùng coupon ở đây bạn nhé:
https://docs.google.com/document/d/14...
Trong dự án Java Spring Boot API, việc sử dụng các công cụ như Healthcheck, @PreAuthorize, và Swagger có vai trò quan trọng, giúp tăng cường bảo mật, quản lý và tài liệu hóa API một cách hiệu quả.
Healthcheck
Chức Năng: Healthcheck trong Spring Boot thường được sử dụng để kiểm tra tình trạng "sức khỏe" của ứng dụng. Nó cung cấp thông tin cơ bản về trạng thái hoạt động của các thành phần như cơ sở dữ liệu, hệ thống file, và các dịch vụ ngoại vi khác mà ứng dụng phụ thuộc vào.
Cách Thực Hiện: Spring Boot Actuator là một phần mở rộng của Spring Boot giúp dễ dàng tạo các điểm cuối (endpoints) cho mục đích Healthcheck. Chỉ cần thêm phụ thuộc spring-boot-starter-actuator và cấu hình các điểm cuối thông qua application.properties hoặc application.yml.
@PreAuthorize
Chức Năng: @PreAuthorize là một annotation được sử dụng trong Spring Security để kiểm soát quyền truy cập vào các phương thức cụ thể trong API. Nó cho phép bạn định nghĩa các quy tắc bảo mật dựa trên biểu thức, chẳng hạn như kiểm tra vai trò hoặc quyền của người dùng.
Cách Thực Hiện: Để sử dụng @PreAuthorize, bạn cần kích hoạt hỗ trợ cho các annotation bảo mật ở mức phương thức bằng cách sử dụng @EnableGlobalMethodSecurity(prePostEnabled = true) trong cấu hình bảo mật. Sau đó, bạn có thể áp dụng @PreAuthorize trực tiếp lên các phương thức trong controller của bạn với các biểu thức phù hợp, như @PreAuthorize("hasRole('ROLE_ADMIN')").
Swagger (hiện nay thường được gọi là OpenAPI)
Chức Năng: Swagger (OpenAPI) được sử dụng để tạo tài liệu hóa cho API một cách tự động, giúp việc kiểm thử và giao tiếp giữa các nhà phát triển trở nên dễ dàng hơn.
Cách Thực Hiện: Bạn có thể tích hợp Swagger vào dự án Spring Boot bằng cách thêm phụ thuộc springfox-swagger2 và springfox-swagger-ui. Sau đó, tạo một cấu hình Swagger để chỉ định các thông tin cần thiết như tiêu đề API, phiên bản, các điều khoản sử dụng, v.v. Swagger UI sẽ tự động sinh ra và có thể truy cập qua trình duyệt, cung cấp một giao diện đồ họa để tương tác với API.
Kết hợp ba công cụ này vào trong một dự án Spring Boot API sẽ nâng cao khả năng quản lý, bảo mật và tương tác với API, giúp nó trở nên mạnh mẽ và dễ sử dụng hơn.