Kiến trúc tổng thể của ứng dụng bán hàng online
Trong bài học này, bạn sẽ được giới thiệu về kiến trúc hệ thống bán hàng online mà chúng ta sẽ xây dựng trong suốt khóa học.
a. Thành phần chính của hệ thống:
- Frontend (giao diện người dùng): Được phát triển bằng HTML/CSS kết hợp với Thymeleaf, giúp hiển thị dữ liệu động từ backend.
- Backend (logic nghiệp vụ): Sử dụng Spring Boot làm nền tảng chính, xử lý logic nghiệp vụ như giỏ hàng, quản lý đơn hàng, xác thực người dùng, v.v.
- Cơ sở dữ liệu (SQL Server): Lưu trữ dữ liệu về sản phẩm, người dùng, đơn hàng, đánh giá, phân quyền,…
- Security: Sử dụng Spring Security để bảo mật truy cập và phân quyền giữa User và Admin.
- Session/Cart: Lưu trạng thái giỏ hàng tạm thời trong session người dùng.
- API tích hợp: Bao gồm VNPay/Momo (thanh toán), Gmail/Mailtrap (email), Google reCAPTCHA (bảo vệ đăng ký), Chart.js (biểu đồ thống kê).
- Admin Dashboard: Quản trị viên có quyền quản lý toàn bộ hệ thống: sản phẩm, đơn hàng, doanh thu.
b. Luồng hoạt động cơ bản của người dùng
- Người dùng truy cập website, xem danh sách sản phẩm.
- Tìm kiếm, chọn sản phẩm và thêm vào giỏ hàng.
- Đăng ký/đăng nhập để xác nhận đơn hàng.
- Thanh toán bằng VNPay hoặc Momo.
- Nhận email xác nhận đơn hàng.
- Có thể xem lịch sử đơn hàng trong trang cá nhân.
- Quản trị viên kiểm soát đơn hàng, sản phẩm, thống kê doanh thu.
3. Học viên sẽ học được gì sau bài học này?
- Hiểu rõ mục tiêu và cấu trúc khóa học.
- Nắm được tổng thể hệ thống ứng dụng bán hàng mà sẽ thực hành trong suốt khóa.
- Chuẩn bị sẵn sàng về mặt tư duy để bắt đầu cài đặt môi trường và viết những dòng code đầu tiên.
4. Yêu cầu trước khi học
Cài đặt sẵn Java JDK và IDE (IntelliJ IDEA hoặc Spring Tool Suite hoặc Visual Studio Code).
Có kiến thức nền tảng về Java Core.
Hiểu cơ bản về HTML/CSS, SQL là một lợi thế.