圖書管理系統(畢業論文)



畢 業 設 計 [ 論 文 ]




題 目: 圖書管理系統

院 系: 計算機學院

專 業: 軟件技術

姓 名: XXX

指導教師: XX


2017年 10 月 23 日

1. 引言 5
2. 相關技術突破 6
2.1 MVC設計模式 6
2.2 MVC模式運行 6
2.3 開發語言 7
2.4 J2EE概述 7
2.5 Struts2+Jsp+Javabean框架 8
2.6 Struts2+Jsp+Javabean運行模式 8
3 .系統需求分析 10
3.1 架構說明 10
3.1.1 系統開發環境 10
3.1.2 系統軟件結構 10
3.1.3 條件與限制 11
3.2 功能分析 11
3.3 模塊分析 12
4. 系統設計 14
4.1 MVC體系結 構 14
4.2 系統結構與設計 15
4.2.1 系統總體結構 15
4.2.2 普通管理員登錄用例圖 16
4.2.3 超級管理員登錄用例圖 20
4.3 數據庫設計 21
4.3.1 表設計概述 21
4.3.2 表設計 23
4.3.3 數據庫安全性設計 24
4.3.4 數據庫管理和設置 25
4.3.5 數據庫備份恢復策略 25
4.3.6 數據庫運行日常維護 26
4.4 類與結構設計 27
4.5 頁面設計 30
5. 系統實現 33
6. 系統測試 45
6.1 系統測試概述 45
6.2 部分測試用例 45
6.3 測試結果與發現 46
7. 發布 46
8. 結束語 46
9. 參考文獻 47

圖書管理系統設計與實現

【摘要】
隨着網絡時代的到來,電子信息化的飛速發展,圖書館作為一種信息資源的聚集地,圖書種類的繁多,用戶借閱的繁瑣,包含很多的信息數據的管理,以及信息數據的交互。那么如果有一套具體的完善的圖書管理系統就顯得尤為重要,圖書館如果采用人工來管理書籍和借閱管理,由於資料繁多,手工處理的方式不僅工作量大,管理效率低下,也很容易因為疲勞而產生出錯,更不方便讀者對圖書資料的查閱。為了提高圖書管理的效率,本項目針對圖書的管理,設計了一個面向圖書的管理系統。 本系統主要有四個大的功能,對圖書進行管理,對電子書的管理,留言功能,以及對管理員的管理
關鍵詞:系統 圖書管理

1. 引言
21世紀中國圖書館所要達到的目標,是要實現中國圖書館的現代化,實現圖書館的自動化管理,並由現代化帶動圖書館事業的全面繁榮。
隨着互聯網時代的到來,1月22日下午,中國互聯網絡信息中心(CNNIC)在京發布了39次《中國互聯網絡發展狀況統計報告》(以下簡稱為《報告》)。這是關於中國互聯網市場整體發展情況的最權威報告。《報告》顯示,中國網民規模達到7.31億,手機網民達6.95億。網絡已經走進了各家各戶,然而對於圖書館這一個具有龐大的信息的資料的機構,能實現高效的管理已成為必須要面對的問題。
根據CNNIC的調查,截止2016年6月,我國網民仍以10-39歲群體為主,占整體的74.7%,其中20-29歲年齡段的網民占比最高,達30.4%,由此可以看出,大部分的10-39歲的人們更容易接受的是網絡上的信息傳遞,那么不論是圖書管理系統的管理者還是圖書的借閱者,都更加容易接受一個電子化的管理。對待繁多的圖書,有一套完整的圖書管理系統,不僅僅能節省管理時間,更重要的是電子化的管理更方便統計借閱排行信息。而這個項目實現了電子化的管理,推薦書,電子書的共享,借閱書本,添加新書等等功能。實現計算機的智能化管理,以提高工作效率和經濟效益。

 

 

 


2. 相關技術突破
2.1 MVC設計模式
MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設計典范,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用於映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。
Model(模型) 是應用程序中用於處理應用程序數據邏輯的部分。通常模型對象負責在數據庫中存取數據。
View(視圖) 是應用程序中處理數據顯示的部分。通常視圖是依據模型數據創建的。
Controller(控制器) 是應用程序中處理用戶交互的部分。通常控制器負責從視圖讀取數據,控制用戶輸入,並向模型發送數據。
2.2 MVC模式運行
MVC指MVC模式的某種框架,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型、視圖、控制器。它們各自處理自己的任務。最典型的MVC就是JSP + servlet + javabean的模式。然而本系統采用的是JSP+Struts2+javabean的模式,也就是說中間的控制層被Struts所代替。

 

1.1   開發語言

JAVA語言:JDK是Java語言的軟件開發工具包(SDK),主要用於移動設備、嵌入式設備上的Java應用程序。JDK是整個Java開發的核心,它包含了Java的運行環境(JVM+Java系統類庫)和Java工具。1997 年Servlet技術的產生以及緊接着JSP的產生,為Java對抗PHP,ASP等等服務器端語言帶來了籌碼。1998年,Sun發布了EJB1.0標准,至此J2EE平台的三個核心技術都已經出現。因此本次的畢業設計的開發選擇了它。

2.4          J2EE概述

本次開發使用了JAVA EE 5,J2EE 擁有很多值得關注的,其中之一就是新的Java Standard Tag Library (JSTL) 1.2 規范。STL 1.2 的關鍵是統一表達式語言,它允許我們在 JavaServer Faces (JSF) 中結合使用 JSTL 的最佳特性。

    Jdk使用了jdk1.8,Sort 排序,Map映射,Match匹配等都是jdk1.8的新特性。沒有JDK的話,無法編譯Java程序,如果想只運行Java程序,要確保已安裝相應的JRE。

 

2.5          Struts2+Jsp+Javabean框架

Struts2是一個基於MVC設計模式的Web應用框架,它本質上相當於一個servlet,在MVC設計模式中,Struts2作為控制器(Controller)來建立模型與視圖的數據交互。Struts 2是Struts的下一代產品,是在 struts 1和WebWork的技術基礎上進行了合並的全新的Struts 2框架。其全新的Struts 2的體系結構與Struts 1的體系結構差別巨大。Struts 2以WebWork為核心,采用攔截器的機制來處理用戶的請求,這樣的設計也使得業務邏輯控制器能夠與ServletAPI完全脫離開,所以Struts 2可以理解為WebWork的更新產品。雖然從Struts 1到Struts 2有着太大的變化,但是相對於WebWork,Struts 2的變化很小。

2.6          Struts2+Jsp+Javabean運行模式

當Web容器收到請求(HttpServletRequest)它將請求傳遞給一個標准的的過濾鏈包括(ActionContextCleanUp)過濾器。經過Other filters(SiteMesh ,etc),需要調用FilterDispatcher核心控制器,然后它調用ActionMapper確定請求哪個Action,ActionMapper返回一個收集Action詳細信息的ActionMaping對象。FilterDispatcher將控制權委派給ActionProxy,ActionProxy調用配置管理器(ConfigurationManager) 從配置文件中讀取配置信息(struts.xml),然后創建ActionInvocation對象。

ActionInvocation在調用Action之前會依次的調用所用配置攔截器(Interceptor N)一旦執行結果返回結果字符串ActionInvocation負責查找結果字符串對應的(Result)然后執行這個Result Result會調用一些模版(JSP)來呈現頁面。攔截器(Interceptor N)會再被執行(順序和Action執行之前相反)最后響應(HttpServletResponse)被返回在web.xml中配置的那些過濾器和核心控制器(FilterDispatcher)。

 

 

2 .系統需求分析
3.1 架構說明
3.1.1 系統開發環境
系統基於Microsoft Windows 7 操作系統和mysql-installer-community-5.7.17.0版本的數據庫。
系統前台使用Hbuilder_7.5.1,HBuilder是支持HTML5的WEB開發IDE。HBuilder的編寫用到了java、c、Web和ruby。HBuilder本身主體是由Java編寫。它基於Eclipse,所以順其自然地兼容了Eclipse的插件。
系統服務器使用了apache-tomcat-9.0.0.M4,因為它運行時占用的系統資源小,擴展性好,支持負載平衡與郵件服務等開發應用系統常用的功能,所以我選擇了tomcat服務器。
編寫系統使用了eclipse-jee-neon-3-win32-x86_64,Eclipse核心很小,其它所有功能都以插件的形式附加於Eclipse核心之上。Eclipse基本內核包括:圖形API (SWT/Jface), Java開發環境插件(JDT ),插件開發環境(PDE)等
3.1.2 系統軟件結構
系統采用了B/S結構,MVC運行模式。此架構無須安裝客戶端軟件,便於軟件的分發和維護升級,適應了眾多應用客戶端分散環境下的運行和維護需求。
視圖層 - View
Web 層為客戶端提供對應用程序的訪問。Web 層由JSP組成。Web 窗體只是用 JSP提供用戶操作,而代碼隱藏文件實現各種控件的事件處理。驗證使用到了前台框架Bootstrap,Jquery2.1, Javascript等。
模型層 — Model
模型層封裝了數據庫中各個表所映射的實體類,以及連接數據庫的類,jdbc等。
控制層 — Controller
控制層。應用程序中處理用戶交互的部分,用戶輸入信息,與數據庫中的數據進行對比添加,並向模型發送數據。
3.1.3 條件與限制
應用本平台必須保證電腦或其它訪問本平台的軟件有殺毒防毒能力,對於因客戶中毒而產生的數據損失本平台不負任何責任;由於圖書館資料龐大,為了避免不是管理員的人批量刪除修改圖書信息,本系統采用嚴格的等級權限管理,管理員一旦發現丟失密碼,需盡快提供相關證明交於超管進行相關帳戶鎖定與資料的修改。
3.2 功能分析
圖書管理系統主要提供的功能如下:

進入系統:

未鎖定普通管理員登錄:


已鎖定的普通管理員登錄:

 

 

 

 

 

 


超級管理員登錄:

 

 

 

 

 

 

 

 

 

3.3 模塊分析
注:(如果登錄身份為普通管理員,並且未被鎖定,可以查看所有功能,但是沒有權利刪除管理員等操作;如果登錄身份為普通管理員,但是已被鎖定,那么,所有功能不能看,只能留言申請解鎖;如果登錄身份為超級管理員,可以管理所有管理員,可以審核留言)
a)圖書管理
(1)添加圖書:在圖書館里添加一本新的圖書
(2)查看圖書:可以查詢所有圖書信息(修改圖書,刪除圖書等)
(3)推薦書管理:可以推薦熱門書籍,也可以不推薦某些書籍
(4)借書管理:根據借書多少降序排列,可以清空借閱
b)電子書管理
(1)上傳電子書:可以上傳電子書,多本一起上傳等
(2)查看電子書:可以下載電子書,刪除電子書等
c)留言
(1)添加留言:普通管理員留言給超級管理員查看,由超級管理員審核
(2)查看留言:普通管理員只能查看自己的留言,超級管理員可以看所有人的留言並進行審核。
d)管理員管理
(1)修改密碼:超級管理員修改普通管理員的密碼
(2)解鎖/鎖定管理員:一些違規操作的管理員可以對其進行鎖定,也可以對其解鎖
(3)刪除賬號:可以刪除普通管理員的賬號,刪除賬號會先刪除此人的所有留言。
e)管理員的留言管理
(1)查看留言:查看所有人的留言,審核申請。
(2)刪除留言:可以刪除留言。

 

 

 

 

 

需要的請聯系(有償代碼,謝謝)lviter@163.com

 

附上部分效果圖:

普通管理員登陸:

 

最高管理員登陸:

 

 已鎖定管理員登陸:

登陸頁:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM