Website Rao Vặt Dành Cho Sinh Viên: Giải Pháp Tiện Lợi Cho Mua Bán

Khám phá website rao vặt dành cho sinh viên, nơi tìm kiếm việc làm, đồ dùng học tập và chia sẻ thông tin hữu ích cho cuộc sống sinh viên.

Trường đại học

Đại học Đà Nẵng

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2019

63
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: TỔNG QUAN CÔNG NGHỆ SỬ DỤNG

1.1. Web api ASP.NET SignalR core

1.2. Entity Framework core

1.3. Elasticsearch

1.4. js là 1 thư viện JavaScript mã nguồn mở để xây dựng các thành phần giao diện có thể tái sử dụng tạo ra bởi Facebook

1.5. Kết chương

2. CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

2.1. Phân tích hệ thống

2.1.1. Phân tích nghiệp vụ hệ thống

2.1.2. Biểu đồ ca sử dụng

2.1.3. Đặc tả ca sử dụng

2.1.4. Biểu đồ hoạt động

2.2. Thiết kế hệ thống

2.2.1. Biểu đồ tuần tự

2.2.2. Thiết kế cơ sở dữ liệu

2.3. Kết chương

3. CHƯƠNG 3: TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ

3.1. Môi trường lập trình

3.2. Môi trường cài đặt

3.3. Môi trường triển khai

3.4. Tổng quan Docker

3.5. Tổng quan về Microsoft Azure

3.6. Giao diện hệ thống website

3.7. Kiểm thử và đánh giá kết quả

3.8. Đánh giá kết quả

3.9. Kết chương

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Website Rao Vặt Dành Cho Sinh Viên

Website rao vặt dành cho sinh viên là một nền tảng trực tuyến giúp sinh viên dễ dàng mua bán và trao đổi các vật dụng cũ, tìm kiếm việc làm hoặc chỗ ở. Với sự phát triển của công nghệ thông tin, nhu cầu sử dụng các dịch vụ trực tuyến ngày càng tăng cao. Sinh viên thường gặp khó khăn trong việc tìm kiếm thông tin cần thiết, do đó, một website rao vặt chuyên biệt sẽ giúp họ tiết kiệm thời gian và công sức.

1.1. Lợi Ích Của Website Rao Vặt Cho Sinh Viên

Website rao vặt cung cấp nhiều lợi ích cho sinh viên như tiết kiệm chi phí, dễ dàng tìm kiếm thông tin và kết nối với người bán. Sinh viên có thể mua bán đồ cũ với giá rẻ hơn so với hàng mới, từ đó giảm bớt gánh nặng tài chính.

1.2. Tính Năng Nổi Bật Của Website Rao Vặt

Các tính năng như đăng tin miễn phí, tìm kiếm theo danh mục, và giao tiếp trực tiếp giữa người mua và người bán là những điểm nổi bật của website. Điều này giúp sinh viên dễ dàng quản lý và theo dõi các tin rao của mình.

II. Vấn Đề Sinh Viên Gặp Phải Khi Mua Bán Online

Mặc dù có nhiều lợi ích, sinh viên vẫn phải đối mặt với một số thách thức khi tham gia vào các giao dịch mua bán online. Những vấn đề này có thể bao gồm việc thiếu thông tin, rủi ro lừa đảo, và khó khăn trong việc xác thực người bán.

2.1. Rủi Ro Lừa Đảo Trong Giao Dịch

Sinh viên thường gặp phải tình trạng lừa đảo khi mua bán online, đặc biệt là khi không có thông tin rõ ràng về người bán. Việc này có thể dẫn đến mất tiền và không nhận được sản phẩm như mong đợi.

2.2. Thiếu Thông Tin Về Sản Phẩm

Nhiều tin rao không cung cấp đủ thông tin về sản phẩm, khiến sinh viên khó khăn trong việc đưa ra quyết định mua. Điều này có thể dẫn đến sự không hài lòng sau khi giao dịch.

III. Giải Pháp Tối Ưu Cho Website Rao Vặt Dành Cho Sinh Viên

Để giải quyết các vấn đề trên, việc phát triển một website rao vặt chuyên biệt cho sinh viên là cần thiết. Hệ thống này cần tích hợp các tính năng bảo mật và hỗ trợ người dùng hiệu quả.

3.1. Tính Năng Bảo Mật Đáng Tin Cậy

Website cần có các biện pháp bảo mật như xác thực người dùng qua SMS và mã hóa thông tin để đảm bảo an toàn cho các giao dịch. Điều này giúp sinh viên yên tâm hơn khi tham gia mua bán.

3.2. Hỗ Trợ Khách Hàng Nhanh Chóng

Cung cấp dịch vụ hỗ trợ khách hàng 24/7 sẽ giúp sinh viên giải quyết các vấn đề phát sinh nhanh chóng. Điều này tạo ra sự tin tưởng và khuyến khích họ sử dụng dịch vụ thường xuyên.

IV. Ứng Dụng Thực Tiễn Của Website Rao Vặt

Website rao vặt dành cho sinh viên không chỉ giúp họ mua bán mà còn tạo ra một cộng đồng kết nối. Các sinh viên có thể chia sẻ kinh nghiệm và hỗ trợ lẫn nhau trong việc tìm kiếm việc làm hoặc chỗ ở.

4.1. Kết Nối Cộng Đồng Sinh Viên

Thông qua website, sinh viên có thể dễ dàng kết nối với nhau, chia sẻ thông tin và hỗ trợ nhau trong việc tìm kiếm việc làm hoặc chỗ ở. Điều này tạo ra một môi trường học tập tích cực.

4.2. Tăng Cường Kỹ Năng Mua Bán Online

Sinh viên có thể học hỏi và cải thiện kỹ năng mua bán online thông qua việc tham gia vào các giao dịch. Điều này không chỉ giúp họ tiết kiệm chi phí mà còn nâng cao khả năng thương lượng.

V. Kết Luận Về Website Rao Vặt Dành Cho Sinh Viên

Website rao vặt dành cho sinh viên là một giải pháp tiện lợi cho việc mua bán và trao đổi thông tin. Với sự phát triển không ngừng của công nghệ, việc tối ưu hóa các tính năng và bảo mật sẽ giúp website trở thành một công cụ hữu ích cho sinh viên.

5.1. Tương Lai Của Website Rao Vặt

Trong tương lai, website có thể mở rộng thêm nhiều tính năng mới như tích hợp thanh toán trực tuyến và đánh giá người bán. Điều này sẽ nâng cao trải nghiệm người dùng và tạo ra một nền tảng mua bán an toàn hơn.

5.2. Khuyến Khích Sinh Viên Tham Gia

Khuyến khích sinh viên tham gia vào các hoạt động mua bán trên website sẽ giúp họ nhận thức rõ hơn về giá trị của việc sử dụng dịch vụ trực tuyến. Điều này không chỉ giúp họ tiết kiệm chi phí mà còn nâng cao kỹ năng sống.

11/07/2025

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

CHƯƠNG 1: TỔNG QUAN CÔNG NGHỆ SỬ DỤNG 1. RESTful API REST ( REpresentational State Transfer) là một dạng chuyển đổi cấu trúc dữ liệu, một kiểu kiến trúc để viết API. Nó sử dụng phương thức HTTP đơn giản để tạo cho giao tiếp giữa các máy. Vì vậy, thay vì sử dụng một URL cho việc xử lý một số thông tin người dùng, REST gửi một yêu cầu HTTP như GET, POST, DELETE, vv đến một URL để xử lý dữ liệu.

RESTful API là một tiêu chuẩn dùng trong việc thiết kế các API cho các ứng dụng web để quản lý các resource. RESTful là một trong những kiểu thiết kế API được sử dụng phổ biến ngày nay để cho các ứng dụng (web, mobile…) khác nhau giao tiếp với nhau. Chức năng quan trọng nhất của REST là quy định cách sử dụng các HTTP method (như GET, POST, PUT, DELETE…) và cách định dạng các URL cho ứng dụng web để quản các resource. RESTful không quy định logic code ứng dụng và không giới hạn bởi ngôn ngữ lập trình ứng dụng, bất kỳ ngôn ngữ hoặc framework nào cũng có thể sử dụng để thiết kế một RESTful API.1: Mô hình hoạt động của REST API REST hoạt động chủ yếu dựa vào giao thức HTTP.

Các hoạt động cơ bản nêu trên sẽ sử dụng những phương thức HTTP riêng. GET (SELECT): Trả về một Resource hoặc một danh sách Resource. POST (CREATE): Tạo mới một Resource. PUT (UPDATE): Cập nhật thông tin cho Resource.

DELETE (DELETE): Xoá một Resource. SVTH: Nguyễn Nhật Quang GVHD: PSG.TS Nguyễn Thanh Bình 2 Website rao vặt dành cho sinh viên Những phương thức hay hoạt động này thường được gọi là CRUD tương ứng với Create, Read, Update, Delete – Tạo, Đọc, Sửa, Xóa. RESTful API có 2 format chính là JSON và XML, hiện nay JSON được sử dụng phổ biến hơn. Web api ASP.NET core là một mã nguồn mở và là nền tảng mới cho xây dựng cloud trên internet kết nối các ứng dụng web, loT và mobile backends.NET Core có thể chạy trên .NET Core hoặc chạy đầy đủ trên .NET Core được kiến trúc để cung cấp một nền tảng phát triển tối ưu cho các ứng dụng được triển khai tới cloud hoặc chạy on-premises.NET Core bao gồm các thành phần mô-đun cần thiết tối thiểu, do đó bạn giữ lại được tính linh hoạt trong khi xây dựng các solution của bạn.

Bạn có thể phát triển và chạy ASP.NET Core trên Windows, MAC và LINUX. Cải tiến của ASP.NET core so với .Net Framework - Web UI và Web API được hợp nhất - Tích hợp các frameworks hiện đại cho khách hàng và nhà phát triển Hỗ trợ dependency injection - Khả năng lưu trữ trên IIS hoặc tự chủ trong tiến trình riêng của bạn - Công cụ vừa mới và đơn giản để phát triển các web hiện đại - Xây dựng và chạy nền tảng ứng dụng ASP.NET không chỉ trên Windows mà còn trên MAC và Linux nữa - Mã nguồn mở và có một cộng đồng lớn 1.NET SignalR core ASP.NET SignalR core là một thư viện cho các lập trình viên Asp.Net core đơn giản hóa quá trình thêm chức năng web real-time trong phát triển ứng dụng. Real-time web functionality là gì ? Đó là khả năng server đẩy những nội dung tới client đã được kết nối một cách tức thì. Nó khác với giao thức HTTP thông thường: server đợi những yêu cầu từ client và trả về nội dung tương ứng.

SignalR có thể sử dụng trong bất kì chức năng web real-time nào. Trong đó ứng dụng chat trên web là một ví dụ điển hình. SignalR xử lý quản lý kết nối một cách tự động, và cho bạn truyền đi thông điệp tới tất cả các client đã được kết nối một cách đồng loạt, giống như một chat room. Bạn cũng có thể gửi những thông điệp tới những client được xác định.

Kết nối giữa client và server là liên tục, không giống như kết nối HTTP cổ điển, cái mà sẽ thành lập lại kết nối cho mỗi lần giao tiếp. SVTH: Nguyễn Nhật Quang GVHD: PSG.TS Nguyễn Thanh Bình 3 Website rao vặt dành cho sinh viên 1. Entity Framework core Entity Framework core là một nền tảng được sử dụng để làm việc với CSDL quan hệ thông qua cơ chế ánh xạ Object Relational Mapping (ORM), qua đó sử dụng LINQ để truy vấn và cập nhật dữ liệu với sự hỗ trợ của ADO.NET Data Provider.2: Mô hình Entity Framework EDM (Entity Data Model): bao gồm ba phần chính Conceptual model, Mapping and Storage model. − Conceptual Model (khái niệm mô hình): là các lớp và mối quan hệ tương ứng với cơ sở dữ liệu.

Điều này sẽ được độc lập từ cơ sở dữ liệu; − Storage Model (mô hình lưu trữ): mô hình thiết kế cơ sở dữ liệu bao gồm Table, View, Store procedure, Relationship, Key,…; − Mapping (bản đồ): gồm thông tin các khái niệm mô hình do developer ánh xạ tới mô hình lưu trữ hay cơ sở dữ liệu. LINQ to Entities: là ngôn ngữ truy vấn được sử dụng để truy vấn với mô hình đối tượng Object model. Giá trị trả về tuỳ thuộc theo developer, theo Model. Entity SQL: là ngôn ngữ truy vấn giống như LINQ to Entities.

Nhưng nó hơi phức tạp hơn. Object Service: phục vụ cho việc truy cập, trả giá trị dữ liệu từ cơ sở dữ liệu. Object Service cung cấp đầy đủ dịch vụ để quá trình chuyển đổi dữ liệu từ thực thể đến cấu trúc đối tượng dễ dàng hơn. Entity Client Data Provider: giúp chuyển đổi L2E hoặc truy vấn Entity SQL vào truy vấn SQL trong cơ sở dữ liệu.

Nó sẽ giao tiếp với ADO.NET data provider hoặc lấy dữ liệu từ cơ sở dữ liệu.Net Data Provider: lớp này giao tiếp với cơ sở dữ liệu sử dụng theo chuẩn ADO. SVTH: Nguyễn Nhật Quang GVHD: PSG.TS Nguyễn Thanh Bình 4 Website rao vặt dành cho sinh viên Entity Framework cung cấp 3 mô hình tiếp cận xây dựng ứng dụng: − Database First: Sẽ tự động tạo ra Data model và các Object class từ Database có sẵn thông qua công cụ Entity Data Model Wizard; − Model First: cho phép tạo Data model bằng công cụ Entity Data Model Designer, sau đó phát sinh các Object class và Database; − Code First: cho phép thiết kế các Object class tương ứng với các Table trong Database. Việc sử dụng Code First đòi hỏi phải code nhiều nhưng bù lại nó linh hoạt và được sử dụng rất phổ biến. Elasticsearch Elasticsearch là một công cụ tìm kiếm dựa trên nền tảng Apache Lucene.

Nó cung cấp một bộ máy tìm kiếm dạng phân tán, có đầy đủ công cụ với một giao diện web HTTP có hỗ trợ dữ liệu JSON. Elasticsearch được phát triển bằng Java và được phát hành dạng nguồn mở theo giấy phép Apache: - Elasticsearch là một search engine. - Elasticsearch được kế thừa từ Lucene Apache - Elasticsearch thực chất hoặt động như 1 web server, có khả năng tìm kiếm nhanh chóng (near realtime) thông qua giao thức RESTful - Elasticsearch có khả năng phân tích và thống kê dữ liệu - Elasticsearch chạy trên server riêng và đồng thời giao tiếp thông qua RESTful do vậy nên nó không phụ thuộc vào client viết bằng gì hay hệ thống hiện tại của bạn viết bằng gì. Nên việc tích hợp nó vào hệ thống bạn là dễ dàng, bạn chỉ cần gửi request http lên là nó trả về kết quả.

- Elasticsearch là 1 hệ thống phân tán và có khả năng mở rộng tuyệt vời (horizontal scalability). Lắp thêm node cho nó là nó tự động auto mở rộng cho bạn. - Elasticsearch là 1 open source được phát triển bằng Java Indexing - Elasticsearch cho phép trả về kết quả cực nhanh bởi thay vì tìm kiếm bởi text, ES tìm kiếm bởi inverted index - Như vậy với việc dùng inverted index với các keywords, Thay vì đọc từng page để tìm kiếm, ES sẽ tìm kiếm keyword trong index nên kết quả trả về sẽ rất nhanh. Elasticsearch sử dụng search engine Apache Lucence để tạo và quản lý inverted index.

Document - Document là đơn vị tìm kiếm và đánh index. Một index có thể bao gồm một hay nhiều Document, và một Document có thể chứa một hay nhiều Fields. Trong thuật ngữ SVTH: Nguyễn Nhật Quang GVHD: PSG.TS Nguyễn Thanh Bình 5 Website rao vặt dành cho sinh viên về Database, thì một Document có thể hiểu như một table row và một Field tương ứng với một table column. Mapping - Là quá trình định nghĩa làm thế nào một document và các fields của nó được lưu trữ và đánh index.

- Mapping được tạo thông qua API.3: Mapping trong Elasticsearch Cluster - Trong Elasticsearch, mỗi một cluster là một tập các node(server), cluster chứa toàn bộ dữ liệu đồng thời cung cấp khả năng đánh index và tìm kiếm trên toàn bộ các node thuộc cluster đó. Mỗi cluster được định danh bởi một tên duy nhất, nếu không chỉ định cụ thể thì tên mặc định của nó là “elasticsearch”. Node - Một node là một single server, là một phần của cluster, tham gia vào quá trình đánh index và tìm kiếm của cluster. Cũng giống như cluster mỗi node được định danh bởi một tên và được sinh ngẫu nhiên tại thời điểm khởi động hệ thống.

Tất nhiên chúng ta có thể chỉ định tên cho các node này cho mục đích quản lý. Mỗi node có thể join với một cluster mặc định là join với elasticsearch cluster nếu không được chỉ định. Shards vs Replicas - Elasticsearch cung cấp cơ chế cho phép chia index thành nhiều phần nhỏ các phần này được gọi là shards. khi tạo một index có thể configure số lượng shards mà SVTH: Nguyễn Nhật Quang GVHD: PSG.TS Nguyễn Thanh Bình 6 Website rao vặt dành cho sinh viên chúng ta muốn lưu trữ index này.

Mỗi shards, bản thân nó là một index đầy đủ chức năng và độc lập do đó chúng có thể được host bởi bất kỳ node (server) nào. - Elasticsearch cũng cho phép bạn tạo một hay nhiều bản copy của một shards, gọi là replica shards ngắn gọn là replicas.4: Vai trò của Elasticsearch trong hệ thống Các dữ liệu tổng hợp, dữ liệu được người dùng tải lên sẽ lưu vào database sau đấy đồng bộ hóa sang Elasticsearch. Khi người dùng tìm kiếm thì sẽ tìm kiếm trên Elasticsearch, tốc độ vừa nhanh, vừa giảm tải cho database.js là 1 thư viện JavaScript mã nguồn mở để xây dựng các thành phần giao diện có thể tái sử dụng tạo ra bởi Facebook. - Trang web xây dựng dựa trên Client-side giao tiếp với server thông qua API - Hiện nay ReactJS là thư viện hàng đầu trong thiết kế website bới vì tính linh động và tối ưu tối của nó.

- React Native được Facebook công bố 2 năm sau React, cung cấp kiến trúc React để phát triển các ứng dụng Native (iOS, Android UWP) và đang tiếp nối React thành một kẻ khổng lồ trong lĩnh vực lập trình ứng dụng mobile. Kết chương Chương này cung cấp cho người đọc hiểu được các cơ sở lý thuyết, công nghệ được áp dụng trong đề tài Website Rao vặt dành cho sinh viên.

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