Đồ án tốt nghiệp: Xây dựng Website bán đồ nội thất bằng Spring RESTful API và Angular

Tải đồ án tốt nghiệp xây dựng website bán đồ nội thất full-stack. Báo cáo chi tiết ứng dụng Spring RESTful API và Angular trong dự án thực tế.

Chuyên ngành

Công nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Đề tài

2020

233
1
0

Phí lưu trữ

55 Point

Tóm tắt

I. Giới thiệu về Spring Restful API Angular trong xây dựng website bán đồ nội thất

Trong era kỹ thuật số hiện nay, Spring Restful APIAngular đã trở thành những công nghệ thiết yếu cho việc phát triển ứng dụng web hiện đại. Đề án này tập trung vào việc kết hợp hai công nghệ mạnh mẽ này để xây dựng một website bán đồ nội thất chuyên nghiệp và hiệu quả. Spring Boot cung cấp một backend mạnh mẽ với khả năng xử lý dữ liệu phức tạp, trong khi Angular mang lại giao diện người dùng động và thân thiện. Sự kết hợp này không chỉ tăng hiệu suất ứng dụng mà còn cải thiện trải nghiệm khách hàng khi mua sắm đồ nội thất trực tuyến. Bài viết này sẽ khám phá chi tiết về công nghệ, kiến trúc hệ thống và các tính năng chính của dự án.

1.1. Tính cấp thiết của đề tài Spring API Angular

Thị trường bán đồ nội thất trực tuyến ngày càng phát triển mạnh mẽ tại Việt Nam. Nhu cầu xây dựng các nền tảng thương mại điện tử chất lượng cao trở nên cấp thiết hơn bao giờ hết. Spring Restful API cung cấp kiến trúc backend linh hoạt và Angular tạo ra giao diện frontend đáp ứng. Việc tìm hiểu sâu về hai công nghệ này giúp sinh viên nắm vững kỹ năng phát triển ứng dụng web hiện đại, chuẩn bị tốt cho thực tế công việc trong lĩnh vực công nghệ thông tin.

1.2. Mục tiêu xây dựng website bán hàng nội thất

Mục tiêu chính của đề án là xây dựng một platform thương mại điện tử hoàn chỉnh cho lĩnh vực bán đồ nội thất. Hệ thống cần cung cấp các tính năng quản lý sản phẩm, xử lý đơn hàng và quản lý khách hàng. Spring Restful API đảm bảo backend xử lý dữ liệu an toàn và hiệu quả, trong khi Angular tạo giao diện trực quan. Dự án còn hướng tới tối ưu hóa trải nghiệm người dùng, từ tìm kiếm sản phẩm đến thanh toán đơn hàng một cách seamless.

II. Kiến trúc Spring Restful API cho backend website bán nội thất

Spring Framework với Spring Boot là nền tảng hoàn hảo để phát triển Restful API cho ứng dụng thương mại điện tử. Công nghệ này cho phép các lập trình viên xây dựng các endpoint API mạnh mẽ, xử lý yêu cầu HTTP một cách hiệu quả. Trong context của website bán đồ nội thất, Spring Restful API đảm nhận vai trò quản lý toàn bộ logic nghiệp vụ bao gồm quản lý sản phẩm, danh mục, giỏ hàng và đơn hàng. Spring Boot Annotation như @RestController, @RequestMapping@GetMapping giúp định nghĩa các endpoint một cách rõ ràng và dễ bảo trì. Hệ thống database MySQL được tích hợp chặt chẽ với Spring Data JPA để thực hiện các thao tác CRUD một cách mượt mà.

2.1. Các Spring Boot Annotation quan trọng

Các annotation trong Spring Boot đóng vai trò quyết định trong phát triển Restful API. @RestController được sử dụng để đánh dấu lớp xử lý HTTP request, @RequestMapping định nghĩa đường dẫn cơ bản, còn @GetMapping, @PostMapping, @PutMapping@DeleteMapping xử lý các thao tác CRUD. Đối với website bán đồ nội thất, các annotation này giúp tạo ra API endpoints để quản lý sản phẩm, danh mục, người dùng và đơn hàng một cách có tổ chức và bảo mật.

2.2. Quản lý cơ sở dữ liệu với MySQL và JPA

MySQL được lựa chọn là hệ quản trị cơ sở dữ liệu chính cho dự án. Spring Data JPA cung cấp lớp trừu tượng để tương tác với database một cách dễ dàng thông qua các repository interface. Cơ sở dữ liệu được thiết kế với các bảng chính như Product (sản phẩm), Category (danh mục), Order (đơn hàng) và User (người dùng) để hỗ trợ hoạt động bán đồ nội thất hiệu quả.

III. Angular framework phát triển giao diện người dùng

Angular là một framework TypeScript mạnh mẽ dùng để xây dựng các giao diện web động và phản ứng nhanh. Trong dự án website bán đồ nội thất, Angular đảm nhận trách nhiệm tạo ra một frontend ứng dụng hoàn chỉnh với các thành phần như trang chủ, danh mục sản phẩm, giỏ hàng và thanh toán. Framework này cung cấp các công cụ mạnh mẽ như Data Binding, Dependency Injection và HTTP Client để giao tiếp với Spring Restful API. Ưu điểm chính của Angular bao gồm khả năng tạo Single Page Application (SPA), cải thiện hiệu suất ứng dụng và cung cấp một trải nghiệm người dùng mượt mà. Các module như Material Design giúp thiết kế giao diện đẹp và chuyên nghiệp cho nền tảng bán nội thất trực tuyến.

3.1. Ưu điểm sử dụng Angular cho website thương mại điện tử

Angular mang lại nhiều ưu điểm đáng kể cho phát triển website bán đồ nội thất. Framework này hỗ trợ Single Page Application (SPA), cho phép tải dữ liệu mà không cần refresh trang, cải thiện trải nghiệm người dùng. Dependency Injection giúp quản lý code dễ dàng và tăng tính bảo trì. Angular Material cung cấp các component UI sẵn có, tiết kiệm thời gian phát triển. Hơn nữa, Angular có một cộng đồng phát triển lớn, cung cấp nhiều thư viện và tài liệu hỗ trợ cho các nhà phát triển.

3.2. Các khái niệm chính trong Angular development

Hiểu rõ các khái niệm cốt lõi như Components, Services, DirectivesRouting là nền tảng phát triển Angular. Components là những khối xây dựng cơ bản của ứng dụng, Services xử lý logic kinh doanh và giao tiếp API, Directives mở rộng HTML functionality, còn Routing quản lý điều hướng giữa các trang. Cho website bán đồ nội thất, các khái niệm này được áp dụng để tạo các trang sản phẩm, giỏ hàng và checkout một cách linh hoạt và tái sử dụng được.

IV. Các tính năng chính và quy trình xây dựng website bán nội thất

Website bán đồ nội thất được xây dựng với các tính năng cốt lõi bao gồm hệ thống quản lý sản phẩm, giỏ hàng điện tử, xử lý đơn hàng và quản lý người dùng. Giao diện admin cho phép quản lý viên thêm, sửa, xóa sản phẩm và thống kê doanh số bán hàng. Trang người dùng cung cấp trải nghiệm mua sắm mượt mà với khả năng tìm kiếm sản phẩm, xem chi tiết, thêm vào giỏ hàng và thanh toán trực tuyến. Hệ thống bảo mật được triển khai thông qua OAuth2 để đảm bảo an toàn dữ liệu khách hàng. Quy trình phát triển tuân theo phương pháp từ phân tích yêu cầu, thiết kế cơ sở dữ liệu, lập trình backend với Spring và frontend với Angular đến kiểm thử toàn diện.

4.1. Chức năng quản lý sản phẩm và danh mục

Hệ thống quản lý sản phẩm cho phép quản trị viên quản lý đồ nội thất một cách hiệu quả thông qua giao diện admin. Các chức năng bao gồm thêm sản phẩm mới với hình ảnh, mô tả chi tiết và giá cả, sửa thông tin sản phẩm và xóa những mặt hàng không còn kinh doanh. Danh mục được tổ chức rõ ràng để giúp khách hàng dễ dàng tìm kiếm nội thất theo nhu cầu. Backend sử dụng Spring Restful API xử lý các yêu cầu CRUD, trong khi frontend Angular hiển thị dữ liệu một cách trực quan.

4.2. Quy trình thanh toán và quản lý đơn hàng

Quy trình mua hàng được thiết kế người dùng thân thiện, từ chọn sản phẩm nội thất đến thanh toán. Giỏ hàng cho phép khách hàng xem lại các sản phẩm đã chọn, thay đổi số lượng hoặc xóa mặt hàng. Hệ thống thanh toán tích hợp với các cổng thanh toán trực tuyến để đảm bảo an toàn giao dịch. Quản lý đơn hàng cho phép theo dõi trạng thái từ xác nhận đơn hàng đến giao hàng, cung cấp trải nghiệm mua sắm đồ nội thất hoàn chỉnh và đáng tin cậy cho khách hàng.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

28/12/2025
Đồ án tốt nghiệp tìm hiểu spring restful api angular xây dựng website bán đồ nội thất

Trích đoạn nội dung tài liệu

MỞ ĐẦU. GIỚI THIỆU ĐỀ TÀI .1 Tính cấp thiết của đề tài .2 Mục tiêu của đề tài.3 Kết cấu của đề tài. KHẢO SÁT HIỆN TRẠNG .1 Khảo sát các website tiêu biểu .1 Website https://nhadep.2 Website https://noithathoaphat.4 Website https://gotrangtri.2 Kết luận về những tiêu chí website cần đạt .1 Những ưu điểm cần học .2 Những nhược điểm cần khắc phục. 58 PHẦN 2: NỘI DUNG.

TÌM HIỂU SPRING RESTFUL API VÀ ANGULAR .2 Một số spring boot annotation .1 Giới thiệu Angular .2 Ưu điểm của việc sử dụng Angular .3 Một số khái niệm chính. XÂY DỰNG WEBSITE BÁN ĐỒ NỘI THẤT .1 MÔ HÌNH HÓA YÊU CẦU VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU .1 Use Case Diagram .2 Chi tiết các Actor .3 Sơ đồ luồng dữ liệu và cơ sở dữ liệu các nghiệp vụ .4 Cơ sở dữ liệu cuối cùng .2 THIẾT KẾ GIAO DIỆN VÀ XỬ LÝ .1 Màn hình đăng nhập .2 Màn hình đăng ký .3 Màn hình trang chủ .4 Màn hình sản phẩm .5 Màn hình chi tiết sản phẩm .6 Màn hình chi tiết sản phẩm .7 Màn hình giỏ hàng .8 Màn hình trang chủ admin .9 Màn hình thêm loại sản phẩm .10 Màn hình xem chi tiết nhân viên .11 Màn hình menu cá nhân .12 Màn hình quên mật khẩu .3 LẬP TRÌNH .1 Ngôn ngữ lập trình Java .2 Ngôn ngữ lập trình JavaScript .3 Hệ quản trị cơ sở dữ liệu MySQL .4 KIỂM THỬ PHẦN MỀM. 231 Phần 3: KẾT LUẬN. 235 TÀI LIỆU THAM KHẢO.

236 12 MỤC LỤC HÌNH ẢNH Hình 1: Usecase Diagram. Giao diện màn hình đăng nhập. Thiết kế xử lý giao diện đăng nhập. Giao hiện màn hình đăng ký.

Thiết kế xử lý giao diện đăng ký. Giao diện màn hình trang chủ. Thiết kế xử lý giao diện trang chủ. Giao diện màn hình sản phẩm.

Thiết kế xử lý giao diện sản phẩm. Giao diện màn hình chi tiết sản phẩm. Thiết kế xử lý giao diện chi tiết sản phẩm. Giao diện màn hình thông tin cá nhân.

Thiết kế xử lý giao diện thông tin cá nhân. Giao diện màn hình giỏ hàng. Thiết kế xử lý giao diện giỏ hàng. Giao diện màn hình trang chủ admin.

Thiết kế xử lý giao diện trang chủ admin. Giao diện màn hình thêm loại sản phẩm. Thiết kế xử lý giao diện thêm loại sản phẩm. Giao diện màn hình xem chi tiết nhân viên.

Thiết kế xử lý giao diện xem chi tiết nhân viên. Giao diện màn hình menu cá nhân. Thiết kế xử lý giao diện menu cá nhân. Giao diện màn hình quên mật khẩu.

Thiết kế xử lý giao diện quên mật khẩu. 222 13 MỤC LỤC BẢNG BIỂU Bảng 1. Danh sách các nghiệp vụ của đối tượng Guest. Danh sách các quy định của đối tượng Guest.

Danh sách các nghiệp vụ của đối tượng User. Danh sách các quy định của đối tượng User. Danh sách các nghiệp vụ của đối tượng Admin. Danh sách các quy định của đối tượng Admin.

Danh sách các nghiệp vụ của đối tượng Employee. Danh sách các nghiệp vụ của đối tượng Employee. 87 14 PHẦN 1: MỞ ĐẦU Chương 1. GIỚI THIỆU ĐỀ TÀI 1.1 Tính cấp thiết của đề tài Xã hội ngày càng phát triển, mức sống của người dân ngày càng cao, nhịp sống của con người cũng tăng nhanh.

Để đáp ứng cho nhu cầu cuộc sống ngày một năng động và đổi mới của con người, các loại hình mới xuất hiện ngày càng nhiều. Nhu cầu mua sắm online ngày càng nhiều, đáp ứng nhu cầu một tăng của khách hàng, một website bán đồ nội thất luôn cập nhật xu hướng là điểm đến đáng tin cậy cho những khách hàng tiềm năng với nhu cầu mua sắm đồ nội thất cho gia đình.2 Mục tiêu của đề tài - Xây dụng website bán đồ nội thất với Spring Restful API, AngularJS. Website kinh doanh nhiều loại sản phẩm đa dạng được chế tác từ nhiều hãng nổi tiếng trong và ngoài nước. - Các mục tiêu sản phẩm nhắm tới:  Về phía khách hàng:  Giao diện màu sắc hài hòa, bố cục hợp lí, dễ sử dụng.

 Thông tin các sản phẩm rõ ràng, chính xác.  Dễ dàng chọn lựa, đặt hàng.  Thao tác đăng ký tài khoản nhanh chóng.  Tài khoản được bảo mật.

 Về phía người quản lý:  Giao diện đơn giản, dễ sử dụng  Dễ dàng quản lý, thực hiện các thao tác thêm, xóa, sửa.  Phân quyền tài khoản nhân viên và admin.  Tài khoản được bảo mật.3 Kết cấu của đề tài Đề tài bao gồm 5 giai đoạn: - Khảo sát hiện trạng - Mô hình hóa yêu cầu và thiết kế CSDL - Thiết kế giao diện và xử lý - Lập trình 15 - Kiểm thử phần mềm 16 Chương 2. KHẢO SÁT HIỆN TRẠNG 2.1 Khảo sát các website tiêu biểu 2.1 Website https://nhadep.vn/ *Hình ảnh của website Trang chủ: 17 18 Trang sản phẩm: 19 20 Trang chi tiết sản phẩm: 21 22 Trang bài viết, tin tức: 23 Trang kết quả tìm kiếm: 24 * Ưu điểm: - Về giao diện:  Website có giao diện được thiết kế khá đẹp.

 Màu sắc kết hợp hài hòa: xanh, trắng và vàng.  Khi truy cập vào trang web, ta có thể thấy ngay số điện thoại liên lạc.  Banner lớn và đập vào mắt người dùng ngay khi truy cập vào trang.  Các hiệu ứng chuyển sản phẩm mượt mà và đẹp mắt.

- Về chức năng:  Phân loại cụ thể các sản phẩm thành từng trang, mục riêng.  Có thể mua sản phẩm trực tuyến hoặc liên hệ tư vấn.  Khi nhấp vào số điện thoại ở trang chủ thì có thể truy cập đến các app có sẵn trên máy tính để liên hệ đến số điện thoại đó.  Có một logo nhỏ hình Messenger, khi nhấp vào sẽ truy cập đến Messenger của Facebook.

 Có nút back to top, có phân trang sản phẩm.  Có sắp xếp, lọc sản phẩm, có thể đăng bình luận. Khi truy cập vào 1 sản phẩm cụ thể, trỏ chuột có thể hiện hình phóng to của sản phẩm và hình này có thể được điều chỉnh to nhỏ mà nút lăn chuột.  Các mục trên thanh điều hướng và các sản phẩm khi được trỏ chuột tới sẽ thay đổi hiệu ứng, khi kéo xuống dưới thì thanh điều hướng đi theo.

 Footer của web có đầy đủ thông tin liên lạc có thể click vào để truy cập. Ngoài ra còn có Facebook, Youtube, Instagram và đường dẫn đến chứng nhận của bộ công thương.  Có các sản phẩm 360 độ tạo cho người dùng có thể cảm nhận rõ hơn về thiết kế.  Có thông tin liên lạc của các thành viên trong đội ngũ, quy trình thực hiện được trình bày rõ ràng trên web bằng hình ảnh sơ đồ trực quan sinh động.

25 * Nhược điểm: - Về giao diện:  Phần header của trang chủ cũng có khoảng trắng căn 2 bên tạo cảm giác logo cùng các thanh search bị nhỏ lại  Màu trắng ở phần header quá nhiều  Ở trang chủ có một tấm banner khi bấm vào thì được thông báo là không tìm thấy đường dẫn  Nội dung chạy phía dưới của thanh điều hướng chỉ có một mà không thay đổi - Về chức năng:  Không có chức năng đăng nhập, đăng ký.  Một số nút bấm cũng như liên kết không được làm nổi bật hay thay đổi hiệu ứng khi trỏ chuột vào.  Ở các sản phẩm 360 độ thì thanh điều khiểu phía dưới không được Việt hóa mà vẫn sử dụng tiếng anh trong khi ở phía trên có một số sử dụng tiếng Việt.  Phần tìm kiếm khi nhập từ khóa không có gợi ý cho khách hàng  Dù có phần chat Messenger nhưng khi bấm vào sẽ bật 1tab khác và chuyển sang Messenger của Facebook.

So với chat trực tiếp ngay trang web có phần bất tiện hơn.  Khi bấm mua ngay trên trang web thì xuất hiện phiếu nhập thông tin và không có phím tăng giảm số lượng sản phẩm nên có thể người nhập sẽ phải ghi chú trong phiếu nhập.2 Website https://noithathoaphat.pro/ * Hình ảnh của website: Trang chủ: 27 28 29 Trang sản phẩm: Trang chi tiết sản phẩm: 30 31 Trang tìm kiếm: 32 * Ưu điểm - Về giao diện:  Giao diện được thiết kế có màu sắc khá hài hòa  Các phần của giao diện được thiết kế sát nhau mà không rời rạc  Chỉ mới vào trang chủ đã có thể thấy được số lượng lớn phân loại và sản phẩm  Khi trỏ chuột chi chuyển qua các bộ phận có link của trang web thì có hiệu ứng thay đổi màu sắc để nhận dạng  Phần footer được thiết kế nhỏ gọn nhưng đầy đủ thông tin  Web được thiết kế không có nhiều hiệu ứng nhưng lại cảm thấy rất dễ sử dụng - Về chức năng:  Tìm kiếm có gợi ý cho người dùng khi nhập  Khi click vào các số điện thoại có thể truy cập đến các app có trong máy để liên lạc  Có nhiều cách liên lạc từ gọi điện, sms đến zalo và messenger  Thanh điều hướng phân loại rất nhiều, khi di chuyển xuống thì thanh điều hướng cũng đi theo  Có nút back to top  Có lịch sử các sản phẩm đã xem  Có nút chỉnh số lượng, màu sắc, kích thước và chất liệu sản phẩm  Có chức năng bình luận sản phẩm  Có chức năng giỏ hàng  Ngoài chức năng lọc, sắp xếp sản phẩm thông thường còn có them các lựa chọn giá cả trong các khoảng giá trị khác nhau.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ