圖書(shū)管理系統(tǒng)規(guī)劃與設(shè)計(jì)

時(shí)間:2022-03-07 08:32:31

導(dǎo)語(yǔ):圖書(shū)管理系統(tǒng)規(guī)劃與設(shè)計(jì)一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢(xún)客服老師,歡迎參考。

圖書(shū)管理系統(tǒng)規(guī)劃與設(shè)計(jì)

摘要:本文以北方股份圖書(shū)管理系統(tǒng)的實(shí)際應(yīng)用為背景,論述了系統(tǒng)開(kāi)發(fā)過(guò)程中的整體思路與具體實(shí)施的技術(shù)細(xì)節(jié)。該系統(tǒng)使用Eclipse作為開(kāi)發(fā)工具在MVC模式的模式下用Struts框架對(duì)本系統(tǒng)進(jìn)行規(guī)劃設(shè)計(jì),并運(yùn)用了Ajax技術(shù),在借鑒了許多成熟的圖書(shū)管理系統(tǒng)的基礎(chǔ)上,開(kāi)發(fā)了適用于北方股份的圖書(shū)管理系統(tǒng)。本文旨在對(duì)北方股份圖書(shū)管理系統(tǒng)實(shí)現(xiàn)了圖書(shū)管理、用戶(hù)管理、報(bào)表管理和系統(tǒng)管理四大功能的說(shuō)明。

關(guān)鍵詞:圖書(shū)管理系統(tǒng);規(guī)劃;設(shè)計(jì)

1北方股份圖書(shū)管理設(shè)計(jì)的相關(guān)技術(shù)

1.1B/S結(jié)構(gòu)。B/S結(jié)構(gòu),是WEB的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,這種模式統(tǒng)一了客戶(hù)端,將系統(tǒng)功能的核心部分集中到服務(wù)器上來(lái)實(shí)現(xiàn),簡(jiǎn)化了客戶(hù)端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量。只要在客戶(hù)機(jī)上安裝一個(gè)瀏覽器,瀏覽器通過(guò)WebServer與數(shù)據(jù)庫(kù)交換數(shù)據(jù)。1.2Struts框架。Struts是一個(gè)相對(duì)流行的MVC框架,用途是迅速開(kāi)發(fā)JavaWeb的應(yīng)用。Struts完成的重點(diǎn)在C(Controller),包含ActionServlet和我們自己定制的Action,也為V(View)提供了一連串定制標(biāo)簽(CustomTag)。1.3Ajax技術(shù)。Ajax的工作原理相當(dāng)于在用戶(hù)和服務(wù)器之間加了—個(gè)中間層(AJAX引擎),使用戶(hù)操作與服務(wù)器響應(yīng)異步化。并不是所有的用戶(hù)請(qǐng)求都提交給服務(wù)器,像—些數(shù)據(jù)驗(yàn)證和數(shù)據(jù)處理等都交給Ajax引擎自己來(lái)做,只有確定需要從服務(wù)器讀取新數(shù)據(jù)時(shí)再由Ajax引擎代為向服務(wù)器提交請(qǐng)求。1.4JFreeChart技術(shù)。JFreeChart是一款統(tǒng)計(jì)圖生成工具,可以直接生成PNG、JPG等各式的文件為我們java項(xiàng)目的開(kāi)發(fā)增加了一部利器。JFreeChart繪制各種各樣的圖表,不同樣式的圖表基本上可以滿(mǎn)足不同的要求。圖書(shū)管理系統(tǒng)需掌握J(rèn)FreeChart核心類(lèi)庫(kù)。1.5POI技術(shù)POI的目標(biāo)就是提供一組JavaAPI來(lái)使得基于MicrosoftOLE2CompoundDocument格式的MicrosoftOffice文件易于操作。

2北方股份圖書(shū)管理系統(tǒng)需求分析

北方股份圖書(shū)管理系統(tǒng)應(yīng)該實(shí)現(xiàn)用戶(hù)登錄、圖書(shū)管理、用戶(hù)管理、報(bào)表管理和系統(tǒng)備份幾個(gè)功能模塊,以下是這些功能的詳細(xì)描述:用戶(hù)登錄:用戶(hù)輸入用戶(hù)名和密碼,并且輸入系統(tǒng)自動(dòng)生成的驗(yàn)證碼后進(jìn)入系統(tǒng)主頁(yè)。圖書(shū)管理功能:用戶(hù)可以查詢(xún)所需圖書(shū)信息,對(duì)圖書(shū)進(jìn)行評(píng)論和評(píng)分,并提供借閱操作。用戶(hù)管理功能:用戶(hù)可以根據(jù)自己的權(quán)限增加和刪除用戶(hù),可以給其他用戶(hù)發(fā)郵件,查詢(xún)某一部門(mén)下的所有員工。報(bào)表管理功能:可以在頁(yè)面內(nèi)顯示關(guān)于圖書(shū)信息的各種統(tǒng)計(jì)圖,并且能夠?qū)㈨?yè)面顯示的統(tǒng)計(jì)圖以PDF格式導(dǎo)出。系統(tǒng)備份功能:系統(tǒng)備份主要包括數(shù)據(jù)庫(kù)備份和數(shù)據(jù)庫(kù)信息以Excel格式導(dǎo)出。本管理信息系統(tǒng)的每個(gè)系統(tǒng)都必須有輸入、輸出、統(tǒng)計(jì)、維護(hù)、基礎(chǔ)數(shù)據(jù)設(shè)置等功能,系統(tǒng)的各個(gè)模塊也要實(shí)現(xiàn)對(duì)數(shù)據(jù)的基本操作的功能。具體設(shè)計(jì)整體結(jié)構(gòu)和各功能模塊的結(jié)構(gòu)如圖1所示:圖1系統(tǒng)整體結(jié)構(gòu)通過(guò)對(duì)系統(tǒng)需求和功能的分析,系統(tǒng)主要的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)項(xiàng)構(gòu)設(shè)計(jì)有:圖書(shū)信息表、圖書(shū)狀態(tài)表、部門(mén)表、用戶(hù)表、系統(tǒng)功能權(quán)限表、操作權(quán)限表、管理操作權(quán)限表、用戶(hù)權(quán)限表、圖書(shū)評(píng)價(jià)表。

3北方股份圖書(shū)管理系統(tǒng)詳細(xì)設(shè)計(jì)

本系統(tǒng)嚴(yán)格遵循三層架構(gòu)的設(shè)計(jì)思想,表現(xiàn)層采用了JSP,中間層采用了Struts,數(shù)據(jù)庫(kù)采用了Mysql,系統(tǒng)通過(guò)Mysql層、操作數(shù)據(jù)層、服務(wù)層、控制層、表示層的架構(gòu)實(shí)現(xiàn)。采用這樣的架構(gòu)以后,用戶(hù)發(fā)送請(qǐng)求時(shí),執(zhí)行以下過(guò)程:(1)用戶(hù)通過(guò)表示層,把請(qǐng)求給控制器層。(2)控制器層拿到請(qǐng)求后,把命令發(fā)給服務(wù)層處理。(3)服務(wù)層接到命令,把命令傳遞到操作數(shù)據(jù)庫(kù)層。(4)操作數(shù)據(jù)層拿到命令后,就向數(shù)據(jù)庫(kù)發(fā)出相應(yīng)的命令等待數(shù)據(jù)庫(kù)的回應(yīng)。(5)數(shù)據(jù)庫(kù)得到命令后,就執(zhí)行相應(yīng)的操作,然后把響應(yīng)的結(jié)果返回給數(shù)據(jù)庫(kù)操作層。(6)數(shù)據(jù)庫(kù)操作層再把結(jié)果交給服務(wù)層。(7)服務(wù)層又把結(jié)果送到控制器層。(8)控制器層再通過(guò)表現(xiàn)層把結(jié)果展現(xiàn)給用戶(hù)。

4北方股份圖書(shū)管理系統(tǒng)實(shí)現(xiàn)

根據(jù)目標(biāo)系統(tǒng)要求的性質(zhì)和實(shí)際運(yùn)行的環(huán)境,選取一種合適的高級(jí)設(shè)計(jì)程序語(yǔ)言,把詳細(xì)規(guī)劃設(shè)計(jì)的結(jié)果翻譯成用選定的語(yǔ)言書(shū)寫(xiě)的程序。本系統(tǒng)選用java語(yǔ)言作為開(kāi)發(fā)語(yǔ)言。在Struts應(yīng)用框架中,中心控制器(ActionServlet)主要負(fù)責(zé)將HTTP的客戶(hù)請(qǐng)求信息組裝后,根據(jù)配置文件的指定描述,轉(zhuǎn)發(fā)到適當(dāng)?shù)奶幚砥鳎ˋction)。按照Servelt的標(biāo)準(zhǔn),所有的Servlet必須在web應(yīng)用的配置文件(web.xml)中聲明。同樣,ActoinServlet必須在web.xml中描述,配置信息如下所示:<servlet><servlet-name>action</servlet-name><servlet-class>org.apache.struts.action.ActionServlet</servlet-class></servlet>全部的請(qǐng)求URI以*.do的模式存在并映射到這個(gè)servlet,其配置如下:<servlet-mapping><servlet-name>action</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping>系統(tǒng)基本實(shí)現(xiàn)了以下要求:(1)在輸入數(shù)據(jù)為典型的正常數(shù)據(jù)時(shí),系統(tǒng)的響應(yīng)符合需求分析和設(shè)計(jì)階段的要求。(2)界面的數(shù)據(jù)項(xiàng)及屬性與需求說(shuō)明相符,并能夠正確加載默認(rèn)值。(3)能夠?qū)斎霐?shù)據(jù)進(jìn)行合法性校驗(yàn),數(shù)據(jù)格式的有效性校驗(yàn)。(4)能夠?qū)?shù)據(jù)項(xiàng)描述所指明的數(shù)據(jù)約束關(guān)系給與響應(yīng)。

5結(jié)語(yǔ)

本課題描述了B/S模式下,通過(guò)使用MVC模式的北方股份圖書(shū)管理系統(tǒng)的需求,設(shè)計(jì),開(kāi)發(fā)和實(shí)現(xiàn)。在論文中,完成了對(duì)整個(gè)系統(tǒng)的需求分析,對(duì)系統(tǒng)所需要實(shí)現(xiàn)的功能和性能進(jìn)行了系統(tǒng)的設(shè)計(jì)。運(yùn)用了UML統(tǒng)一建模語(yǔ)言對(duì)系統(tǒng)進(jìn)行建模,從而幫助完善系統(tǒng)需求。在完善的需求分析、概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)的指引下,使編碼更加簡(jiǎn)單,邏輯上清晰。最后,在運(yùn)用本系統(tǒng)過(guò)程中出現(xiàn)問(wèn)題的地方進(jìn)行了徹底修改完善,加強(qiáng)了系統(tǒng)整體的穩(wěn)定性與安全性。

參考文獻(xiàn):

[1]何成萬(wàn),李碧鋒,季英珍.MVC結(jié)構(gòu)在Ajax客戶(hù)端開(kāi)發(fā)中的應(yīng)用研究[J].軟件導(dǎo)刊,2008(4):54-55.

[2]蘇守寶.Java面向?qū)ο蟪绦蛟O(shè)計(jì)[M].北京:科學(xué)出版社,2016.

[3]何雪鋒,謝宇.深入淺出SSH框架[J].電腦知識(shí)與技術(shù),2016,12(14):206-207.

[4]賀曦春,熊前興,吳婷.基于Ajax技術(shù)與MVC模式相結(jié)合的Web框架研究[J].電腦知識(shí)與技術(shù),2008,4(12):1650-1652.

[5]李致忠.圖書(shū)館的科學(xué)定位與發(fā)展戰(zhàn)略[J].國(guó)家圖書(shū)館學(xué)刊,2001,10(4):2-8.

作者:郭大海 馬占飛 單位:1.內(nèi)蒙古科技大學(xué)信息工程學(xué)院 2.內(nèi)蒙古科技大學(xué)包頭師范學(xué)院