Đồ án tốt nghiệp: Xây dựng hệ thống thư viện online với MVC & API Restful

Báo cáo đồ án tốt nghiệp xây dựng hệ thống thư viện online. Hướng dẫn chi tiết các bước triển khai bằng MVC, Entity Framework 6 và API Restful.

Chuyên ngành

Công Nghệ Thông Tin

Tác giả

Phùng Văn An

Người đăng

Ẩn danh

Thể loại

Khóa Luận Tốt Nghiệp

2019

99
0
0

Phí lưu trữ

35 Point

Tóm tắt

I. Tổng quan về Đồ án Xây dựng Thư viện Online

Đồ án xây dựng thư viện online là một dự án toàn diện nhằm phát triển hệ thống quản lý tài liệu điện tử hiện đại. Sử dụng các công nghệ tiên tiến như ASP.NET MVC, Entity Framework 6, và API RESTful, hệ thống này cung cấp giải pháp tối ưu cho việc lưu trữ, quản lý và truy cập tài liệu học thuật. Đề tài được thực hiện tại Trường Đại học Sư phạm Kỹ thuật TP.HCM, nhằm cung cấp nền tảng cho sinh viên và giảng viên truy cập các tài liệu học tập một cách hiệu quả và tiện lợi.

1.1. Mục đích và tính cấp thiết của đề tài

Mục đích chính của đề tài là xây dựng hệ thống thư viện online hiệu quả, giúp sinh viên dễ dàng truy cập các tài liệu học tập, khóa luận và ebook. Tính cấp thiết nằm ở nhu cầu số hóa tài liệu trong giáo dục hiện đại, giảm bớt gánh nặng quản lý tài liệu giấy và nâng cao trải nghiệm người dùng.

1.2. Đối tượng sử dụng hệ thống

Hệ thống phục vụ ba nhóm đối tượng chính: quản trị viên (quản lý toàn bộ hệ thống), giảng viên (upload và quản lý tài liệu), và sinh viên (tìm kiếm và tải xuống tài liệu). Mỗi nhóm có quyền hạn khác nhau, đảm bảo bảo mật và hiệu quả trong quản lý.

II. Nền tảng công nghệ và kiến trúc hệ thống

ASP.NET MVC được lựa chọn làm framework chính vì kiến trúc rõ ràng, tách biệt giữa Model, View và Controller. Entity Framework 6 cung cấp giải pháp ORM (Object-Relational Mapping) mạnh mẽ, tối ưu hóa tương tác với cơ sở dữ liệu. API RESTful 2 cho phép xây dựng các dịch vụ web linh hoạt, hỗ trợ các client khác nhau. Kiến trúc này đảm bảo hệ thống có tính mở rộng cao, dễ bảo trì và nâng cấp trong tương lai.

2.1. ASP.NET MVC Framework

ASP.NET MVC là framework phát triển web mạnh mẽ, cung cấp mô hình lập trình rõ ràng. Nó cho phép tách biệt logic ứng dụng (Model), giao diện người dùng (View), và xử lý yêu cầu (Controller), giúp code dễ test, bảo trì và phát triển theo quy mô lớn.

2.2. Entity Framework 6 và quản lý dữ liệu

Entity Framework 6 sử dụng mô hình LINQ to SQL cho phép tương tác với database thông qua các object .NET. Nó tự động sinh mã, quản lý mối quan hệ giữa các bảng, và tối ưu hóa truy vấn, giảm thiểu công việc viết SQL thủ công.

2.3. API RESTful 2 cho tích hợp dịch vụ

API RESTful 2 cung cấp giao diện tiêu chuẩn REST cho phép các ứng dụng client khác nhau (web, mobile) tương tác với hệ thống. Nó sử dụng HTTP methods (GET, POST, PUT, DELETE) để thực hiện các thao tác CRUD một cách an toàn và hiệu quả.

III. Phân tích yêu cầu và thiết kế hệ thống

Giai đoạn phân tích yêu cầu xác định các chức năng cần thiết cho hệ thống: quản lý người dùng, quản lý tài liệu, tìm kiếm nâng cao, và quản lý quyền hạn. Thiết kế hệ thống bao gồm thiết kế cơ sở dữ liệu với các bảng (Users, Documents, Categories), sơ đồ lớp cho ứng dụng theo mô hình N-Tier, và giao diện người dùng thân thiện, dễ sử dụng. Quá trình này đảm bảo hệ thống đáp ứng đầy đủ nhu cầu của người dùng.

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

Cơ sở dữ liệu được thiết kế với các bảng chính: Users (quản lý người dùng), Documents (tài liệu), Categories (phân loại), Comments (bình luận). Các mối quan hệ được xác định rõ ràng, đảm bảo tính toàn vẹn dữ liệu và hiệu suất truy vấn tối ưu.

3.2. Sơ đồ kiến trúc N Tier

Kiến trúc N-Tier tách hệ thống thành các lớp: Presentation Layer (giao diện), Business Logic Layer (xử lý logic), Data Access Layer (truy cập dữ liệu). Cách tổ chức này giúp code dễ quản lý, test và phát triển các tính năng mới một cách độc lập.

3.3. Giao diện và trải nghiệm người dùng

Giao diện hệ thống được thiết kế đơn giản, trực quan với tính năng tìm kiếm nâng cao, phân loại tài liệu, và quản lý profile. Mỗi nhóm người dùng có dashboard riêng, hiển thị thông tin và chức năng phù hợp với vai trò của họ.

IV. Kết quả đạt được và hướng phát triển

Sau khi hoàn thành đề tài xây dựng thư viện online, hệ thống đã cung cấp đầy đủ các chức năng cơ bản: đăng nhập, quản lý tài liệu, tìm kiếm, tải xuống file. Kiểm thử ứng dụng được thực hiện toàn diện, đảm bảo tính ổn định và bảo mật. Hướng phát triển trong tương lai bao gồm thêm tính năng đề xuất tài liệu dựa trên AI, chia sẻ tài liệu giữa người dùng, và ứng dụng mobile để truy cập dễ dàng.

4.1. Các chức năng đã hoàn thành

Hệ thống hoàn thành các chức năng: quản lý người dùng (đăng ký, đăng nhập, quên mật khẩu), quản lý tài liệu (upload, edit, delete), tìm kiếm (theo tiêu đề, tác giả, danh mục), và tải xuống file PDF, ebook với kiểm soát quyền.

4.2. Kiểm thử và đảm bảo chất lượng

Kiểm thử ứng dụng bao gồm test chức năng, test hiệu suất, và test bảo mật. Các test case được thực hiện chi tiết, đảm bảo hệ thống hoạt động ổn định, không lỗi, và bảo vệ dữ liệu người dùng an toàn.

4.3. Triển vọng và các tính năng tương lai

Những nâng cấp tương lai bao gồm AI recommendation system gợi ý tài liệu phù hợp, social features cho phép chia sẻ và bình luận, mobile app cho truy cập di động, và cloud storage để mở rộng dung lượng lưu trữ.

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 xây dựng hệ thống thư viện online sử dụng mvc entity framework 6 và api restful 2

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

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT TỔNG QUAN VỀ ASP.NET MVC FRAMEWORK 1. Giới thiệu về mô hình MVC [1] Mô hình MVC là một chuẩn mô hình và đóng vai trò quan trọng trong quá trình xây dựng – phát triển – vận hành và bảo trì một hệ thống hay một ứng dụng – phần mềm. Nó tạo ra một mô hình 3 lớp Model – View – Controller tách biệt và tương tác nhau, giúp các chuyên gia có thể dễ dàng dựa vào mô hình để trao đổi và xử lý những nghiệp vụ một cách nhanh chóng. Đây là một mô hình đã xuất hiện từ những năm 70 của thế kỷ 20 tại phòng thí nghiệm Xerox PARC ở Palo Alto, nó không phụ thuộc vào môi trường, nền tảng xây dựng hay ngôn ngữ phát triển.

Chúng ta có thể áp dụng mô hình MVC vào các dự án trong môi trường Windows, Linux… và sử dụng bất kỳ ngôn ngữ nào như PHP, ASP, JSP… 1. Các thành phần trong MVC Hình 1. 1: Các thành phần trong mô hình MVC Model: là nơi chứa những nghiệp vụ tương tác với dữ liệu hoặc hệ quản trị cơ sở dữ liệu (mysql, ms sql.); nó sẽ bao gồm các class/function xử lý nhiều nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm – xóa – sửa dữ liệu… 3 View: là nới chứa những giao diện như một nút bấm, khung nhập, menu, hình ảnh… nó đảm nhiệm vụ hiển thị dữ liệu và giúp người dùng tương tác với hệ thống. Controller: là nới tiếp nhận những yêu cầu xử lý được gửi từ người dùng, nó sẽ gồm những class/ function xử lý nhiều nghiệp vụ logic giúp lấy đúng dữ liệu thông tin cần thiết nhờ các nghiệp vụ lớp Model cung cấp và hiển thị dữ liệu đó ra cho người dùng nhờ lớp View 1.

Hoạt động của mô hình MVC trong dự án Website Hình 1. 2: Hoạt động của mô hình MVC Mô hình MVC trong các dự án website và sẽ hoạt động theo quy trình sau: - Người dùng sử dụng một BROWSER trình duyệt web bất kỳ (Firefox, Chrome, IE…) để có thể gửi những yêu cầu (HTTP Request) có thể kèm theo những dữ liệu nhập tới những CONTROLLER xử lý tương ứng. Việc xác định Controller xử lý sẽ dựa vào một bộ Routing điều hướng. 4 - Khi CONTROLLER nhận được yêu cầu gửi tới, nó sẽ chịu trách nhiệm kiểm tra yêu cầu đó có cần dữ liệu từ MODEL hay không? Nếu có, nó sẽ sử dụng các class/function cần thiết trong MODEL và nó sẽ trả ra kết quả (Resulting Arrays), khi đó CONTROLLER sẽ xử lý giá trị đó và trả ra VIEW để hiển thị.

CONTROLLER sẽ xác định các VIEW tương ứng để hiển thị đúng với yêu cầu. - Khi nhận được dữ liệu từ CONTROLLER, VIEW sẽ chịu trách nhiệm xây dựng các thành phẩn hiển thị như hình ảnh, thông tin dữ liệu… và trả về GUI Content để CONTROLLER đưa ra kết quả lên màn hình BROWSER. - BROWSER sẽ nhận giá trị trả về (HTTP Response) và sẽ hiển thị với người dùng. Kết thúc một quy trình hoạt động.

Ưu, nhược điểm của mô hình MVC  Ưu điểm: - Hệ thống phân ra từng phần độc lập nên dễ dàng phát triển - Chia thành nhiều module nhỏ nên nhiều người có thể làm chung dự án - Dễ dàng xây dựng – phát triển – quản lý – vận hành và bảo trì một dự án, tạo sự rõ ràng, trong sáng trong quá trình phát triển dự án, kiểm soát được các luồng xử lý và tạo ra các thành phần xử lý nghiệp vụ chuyên biệt hóa - Dễ dàng debug trong quá trình xây dựng  Nhược điểm: - Yêu cầu về chuyên môn khá cao, có kiến thức vững về các mô hình chuẩn - Khó triển khai với những dự án yêu cầu phức tạp hơn 1. Khái niệm về ASP.NET MVC5 [2] ASP.NET MVC là mô hình lập trình web chiến lược của Microsoft. MVC là cụm từ viết tắt của Model-View-Controller, nó phân chia pattern của ứng dụng thành 3 phần – model, controller và view. - Model: giúp lưu trữ dữ liệu của ứng dụng và trạng thái của một cơ sở dữ liệu.

- View: là một giao diện người dùng được sử dụng bởi khách truy cập trang web của bạn để nhìn thấy các dữ liệu. 5 - Controller: chịu trách nhiệm xử lý các tương tác của người dùng với trang web. Nó xác định loại view nào cần phải được hiển thị. Controller cũng được sử dụng cho mục đích giao tiếp với model.NET MVC5 được phát hành vào tháng 10 năm 2013 trên nền tảng bộ .1 trên phiên bản Visual Studio 2013.

Tới nay đã có một số update về phiên bản: Hình 1. 3: Các phiên bản ASP. Những ưu, nhược điểm của ASP.NET  Ưu điểm: - Cho phép lựa chọn một trong các ngôn ngữ để lập trình: Visual Basic.Net, J#, C#… Trang ASP.Net được biên dịch trước thành những tập tin DLL mà Server có thể thi hành nhanh chóng và hiệu quả - Hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng của .Net Framework, làm việc với XML, Web Service, truy cập cơ sở dữ liệu qua ADO.Net… - ASPX và ASP có thể cùng hoạt động trong một ứng dụng - Sử dụng phong cách lập trình mới: Code behide Tách code riêng, giao diện riêng do vậy dễ đọc, dễ quản lý và bảo trì - Kiến trúc lập trình giống ứng dụng trên Windows - Hỗ trợ quản lý trạng thái của các control - Tự động phát sinh mã HTML cho các Server control tương ứng với từng loại Browser - Triển khai cài đặt + Không cần lock, không cần đăng ký DLL + Cho phép nhiều hình thức cấu hình ứng dụng 6 - Hỗ trợ quản lý ứng dụng ở mức toàn cục + Global.aspx có nhiều sự kiện hơn + Quản lý session trên nhiều Server, không cần Cookies  Nhược điểm: - Không thể chạy được trên linux - Không có Visual Studio thì khó có thể viết code cho Asp.net - Biên dịch chậm làm tốc độ website chậm hơn 1. TỔNG QUAN VỀ ENTITY FRAMEWORK 1.

Giới thiệu về Entity Framework [3] The Microsoft® ADO.NET Entity Framework là một bộ ánh xạ đối tượng – quan hệ (Object/Relational Mapping – ORM) mà cho phép người lập trình làm việc trên các dữ liệu quan hệ như các đối tượng cụ thể, loại bỏ sự cần thiết của hầu hết các mã plumbing mà người lập trình phải viết. Sử dụng Entity Framework, người lập trình truy vấn bằng LINQ, sau đó lấy và thao tác với dữ liệu như các đối tượng được khai báo lúc biên dịch chương trình. Các thành phần ORM của Entity Framework cung cấp các dịch vụ như change tracking, identity resolution, lazy loading, and query translation để các lập trình viên tập trung vào việc phát triển ứng dụng kinh doanh logic hơn là nguyên tắc truy cập dữ liệu cơ bản. 4: Giới thiệu về Entity Framework 1.

Các tính năng nổi trội của Entity Framework - Làm việc được với nhiều máy chủ cơ sở dữ liệu (bao gồm Microsoft SQL Server, Oracle và DB2). - Bao gồm công cụ ánh xạ mạnh mẽ cho phép có thể xử lý trên sơ đồ cơ sở dữ liệu thực tế và làm việc tốt với các thủ tục lưu trữ. - Cung cấp các công cụ Visual Studio tích hợp trực quan để tạo các mô hình thực thể và tự động tạo mô hình từ một cơ sở dữ liệu có sẵn. Một cơ sở dữ liệu mới có thể được triển khai từ một mô hình, mà có thể toàn quyền hiệu chỉnh.

- Cung cấp Code First để tạo ra mô hình thực thể bằng mã. Code First có thể ánh xạ một cơ sở dữ liệu có sẵn hay tạo một cơ sở dữ liệu từ mô hình. - Tương thích tốt với các mô hình lập trình ứng dụng .NET bao gồm: ASP.NET, Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF) và WCF Data Services (trước kia là ADO.NET Data Services). Lợi ích của Entity Framework 8 Entity Framework được xây dụng trên mô hình dịch vụ ADO.NET, với dịch vụ có sẵn được cập nhật thêm để hỗ trợ cho các tính năng mới của Entity Framework.

Bởi vì điều này, các ứng dụng hiện tại được xây dựng trên ADO.NET có thể được chuyển sang Entity Framework dễ dàng với một mô hình lập trình quen thuộc với các lập trình viên ADO. Sử dụng Entity Framework để viết các ứng dụng theo hướng dữ liệu có các lợi ích: - Giảm thời gian phát triển; framework cung cấp khả năng truy cập dữ liệu lõi để người lập trình có thể tập trung vào ứng dụng logic. - Người lập trình có thể làm việc với sự hỗ trợ của một mô hình đối tượng hướng trung tâm hơn, bao gồm các loại kế thừa (inheritance), thành viên phức hợp (complex members), và các mối quan hệ.NET Framework 4, Entity Framework cũng hỗ trợ Persistence Ignorance thông qua các thực thể Plain Old CLR Objects (POCO). - Các ứng dụng được giải thoát khỏi hard-code phụ thuộc vào công cụ dữ liệu cụ thể hay lược đồ lưu trữ bằng cách hỗ trợ một mô hình ý niệm độc lập với mô hình lưu trữ/vật lý.

- Sự ánh xạ giữa mô hình đối tượng và lược đồ lưu trữ cụ thể có thể thay đổi mà không cần thay đổi code ứng dụng. - Ngôn ngữ tích hợp truy vấn (LINQ to Entity) cung cấp IntelliSense (nhắc lệnh) và thời gian biên dịch xác nhận cú pháp để viết các truy vấn với một mô hình ý niệm. Các thành phần của Entity Framework Entity Framework sử dụng Entity Data Model (EDM) để mô tả đối tượng ứng dụng cụ thể hoặc mô hình ý niệm mà chương trình phát triển. EDM xây dựng trên mô hình liên kết thực (Entity Relationship model) được biết đến rộng rãi để tăng độ trừu tượng trên lược đồ cơ sở dữ liệu logic.

EDM được phát triển với mục liêu cơ bản trở thành mô hình dữ liệu chung cho bộ công nghệ phát triển và máy chủ của Microsoft. Do đó, EDM được tạo ra sử dụng với Entity Framework cũng có thể được thừa hưởng với WCF Data Services (formerly ADO.NET Data Services), Windows Azure Table Storage, SharePoint 2010, SQL Server Reporting Services, and SQL Server PowerPivot for Excel, và hơn nữa trong tương lai. Các thành phần của Entity Framework trong EDM: 9 - Entity Framework dựa trên các tập tin XML để thực hiện các công việc của mình. Những tập tin đó thực hiện 3 nhiệm vụ: xác định mô hình ý niệm, xác định mô hình lưu trữ và tạo ra ánh xạ (mapping) giữa mô hình với cơ sở dữ liệu vật lý.

5 Các thành phần của Entity Framework trong EDM  Conceptual schema definition language (CSDL) CSDL là một ngôn ngữ dựa trên XML mô tả các thực thể, các mối quan hệ, và các hàm tạo nên một mô hình ý niệm của ứng dụng hướng dữ liệu (data-driven application). Mô hình ý niệm này có thể được sử dụng bởi Entity Framework hay WCF Data Services.

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