




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于Web的圖書管理系統(tǒng)的設計與實現摘 要隨著時代的發(fā)展,在現代中小型圖書管理系統(tǒng)中,如何方便快捷地為用戶提供服務、提高圖書的利用率等問題變得越來越突出。借助網絡,在圖書管理和用戶之間建立一個交互的電子平臺,將大大提高中小型圖書管理的管理水平和現代化程度。 圖書管理系統(tǒng)正是趨于這個目標而設計,主要實現了5個方面的功能:1.圖書查詢,對圖書進行查詢,可查詢書本的當前狀態(tài)和相關信息;2.借閱管理,包括書籍借閱和書籍歸還的管理;3.圖書管理,主要實現書庫的管理和書籍的管理,包括書庫的建立和刪除,新書的入庫和廢書的刪除等;4.會員管理,是對會員信息和借閱進行管理;5.系統(tǒng)管理,是對系統(tǒng)的權限管理。系統(tǒng)
2、設計突出充分利用JSP技術的MVC設計模式、J2EE開發(fā)中流行的組合框架SSH(Strust+Spring+Hibernate)技術和MYSQL數據庫技術設計和實現了一個基于Web的圖書管理系統(tǒng)。系統(tǒng)要解決的圖書管理所要解決的問題,可以滿足圖書管理基本要求,包括添加、修改刪除管理等功能。系統(tǒng)能根據用戶的需求,快捷方便的為讀者提供借閱服務。關鍵詞: 圖書管理,MVC,框架,SSH,MYSQL數據庫The library management system based on Web of design and implementationABSTRACT:With the development
3、in modern small library management system, how to quickly and easily provide users with services, enhancing the utilization of other issues become more prominent. With the network, the library management and user interaction between a e-platform will greatly enhance the management of small and mediu
4、m level of library management and modernization. Library management system is designed to tend to this end, the main achievement of the five functional areas: one. Book inquiries, check books, check books can be the current status and related information; two. Lending management, including the lendi
5、ng library, and Books returned to the management; three. library management, the main stacks of the management and implementation of management books, including the stack room of the building and removed, new books, book storage and waste removal, etc.; four. member of management, is a member of loa
6、n for information and Management; five. system management is a system of rights management. System design using JSP database development tools and MYSQL5.0 to develop the library management system. Library management system to be solved to solve the problem of library management to meet the basic re
7、quirements, including add, modify, remove management. System according to user needs, provide readers with fast and convenient loan services. Keywords:Literature management system; Information management; JSP第一章 系統(tǒng)需求分析1.1引言隨著計算機技術的飛速發(fā)展,計算機在企業(yè)管理中應用的普與,利用計算機實現圖書信息的管理勢在必行。目前圖書管理的借閱工作部分大多數還是手工管理,工作效率很低,
8、并且不能與時了解圖書的種類和用戶比較需求的圖書等,不能更好的適應當前讀者的借閱要求。手工管理還存在這許多弊端,由于不可避免的人為因素,造成數據的遺漏、誤報。計算機信息化管理有著儲存量大,速度快等許多優(yōu)點,提供給我們的處理信息與時快捷,因此我們利用計算機提供給我們的信息對讀者的借閱過程形成一整套動態(tài)的管理能夠極提高圖書管理管理的效率,這也是圖書管理的科學化、正規(guī)化管理,與世界接軌的重要條件。1.2 開發(fā)環(huán)境在開發(fā)圖書館管理系統(tǒng)時,需要具備下面的軟件環(huán)境。服務器端: 操作系統(tǒng):Windows Sever 2003Web服務器:Tomcat5.5Java開發(fā)包:JDK 1.5以上,JRE1.6.數據
9、庫:MySQL 5.0.37瀏覽器:IE6.0以上版本分辨率:最佳效果為1024 X 768客戶端: 瀏覽器:IE 6.0分辨率:最佳效果 1024 X 768像素1.3 系統(tǒng)需求分析系統(tǒng)的主要目的是實現一個圖書管理系統(tǒng)。系統(tǒng)有2 類用戶分別為管理員、讀者會員。管理員經口令認證進人系統(tǒng)后,管理員可完成維護系統(tǒng)的功能, 包括管理圖書和管理會員。讀者會員則完成查詢圖書、修改個人資料、查詢個人借閱信息的功能, 工作完成后可以退出系統(tǒng)。1.3.1功能需求描述隨著圖書的日益增多,傳統(tǒng)的手工圖書管理不僅工作量大,而且容易出現問題。圖書管理設計的容非常復雜而且繁多,比如擁有圖書信息錄入管理、用戶信息管理、圖
10、書借閱管理和歸還管理,圖書的查詢和修改等。由于系統(tǒng)主要是為方便管理員定制開發(fā)的,因此針對圖書管理的實際工作而言,經過了反復地論證,最終確定了圖書管理系統(tǒng)的設計方案,圖書管理系統(tǒng)的主要功能為:(1) 用戶登錄。管理員或會員根據工作證和密碼登錄系統(tǒng)進行身份驗證。(2) 查詢圖書。登錄系統(tǒng)后進行圖書檢索, 并可以通過點擊圖書名稱查看書本詳細信息??梢圆榭吹綍镜乃行畔⑴c借閱信息。(3) 添加圖書。只有管理員登錄成功后才能添加圖書。通過點擊導航條上的“添加圖書“超進入添加圖書頁面,填好后點提交, 就進數據庫了。(4) 修改圖書。只有管理員登錄成功后才能修改圖書。通過點擊導航條上的“修改圖書“超進入修
11、改圖書頁面,修改好后點提交, 就進數據庫了。(5) 刪除圖書。只有管理員登錄成功后才能修改圖書。通過點擊導航條上的“刪除圖書“超進入刪除圖書頁面,點刪除就可將書刪除。(6) 修改和查詢個人信息。1.4 性能需求為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運行,圖書管理系統(tǒng)應該滿足以下的性能需求:1.4.1系統(tǒng)處理的準確性和與時性系統(tǒng)處理的準確性和與時性是系統(tǒng)的必要性能。在系統(tǒng)設計和開發(fā)過程中,要充分考慮系統(tǒng)當前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應時間能夠滿足中小型企業(yè)對信息處理的需求。1.4.2系統(tǒng)的開放性和系統(tǒng)的可擴充性圖書管理系統(tǒng)在開發(fā)過程中,應該充分考慮以后的可擴充性。例如用
12、戶查詢的需求也會不斷的更新和完善,都要求系統(tǒng)提供足夠的功能的調整和擴充。而要實現這一點,應通過系統(tǒng)的開放性來完成,既系統(tǒng)應是一個開放系統(tǒng),只要符合一定的規(guī),可以簡單的加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過軟件的修補、替換完成系統(tǒng)的升級和更新換代。1.4.3系統(tǒng)的易用性和易維護性圖書管理系統(tǒng)是直接面對使用人員的,而使用人員往往對計算機并不時非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機交互界面。要實現這一點,就要求系統(tǒng)應該盡量使用用戶熟悉的術語和中文信息的界面;針對用戶可能出現的使用問題,要提供足夠的在線幫助,縮短用戶對系統(tǒng)熟悉的過程。1.4.4系統(tǒng)的標準性系統(tǒng)在設計開發(fā)使用過程中
13、都要涉與到很多計算機硬件、軟件。所有這些都要符合主流國際、國家和行業(yè)標準。1.4.5系統(tǒng)的先進性目前計算系統(tǒng)的技術發(fā)展相當快,做為圖書管理系統(tǒng)工程,在系統(tǒng)的生命周期盡量做到系統(tǒng)的先進,充分完成企業(yè)信息處理的要求而不至于落后。這一方面通過系統(tǒng)的開放性和可擴充性,不斷改善系統(tǒng)的功能完成。另一方面,在系統(tǒng)設計和開發(fā)的過程中,應在考慮成本的基礎上盡量采用當前主流并先進且有良好發(fā)展前途的產品。1.4.6系統(tǒng)的響應速度圖書管理系統(tǒng)系統(tǒng)在日常處理中的響應速度為秒級,達到實時要求,以與時反饋信息。在進行統(tǒng)計分析時,根據所需數據量的不同而從秒級到分鐘級,原則是保證操作人員不會因為速度問題而影響工作效率。第二章
14、相關技術介紹本系統(tǒng)實現,采用現在Web開發(fā)最流行的組合框架SSH(Strust+Spring+Hibernate),該框架是基于MVC設計模式的一個組合框架,系統(tǒng)實現層次分明,action層頁面?zhèn)髦?,控制跳轉,service層業(yè)務服務層,主要實現業(yè)務邏輯處理,dao層主要是做數據持久層的工作,負責與數據庫進行聯絡的一些任務都封裝在此,model層數據表與實體類型映射。本系統(tǒng)設計時,考慮到數據庫存儲量大,系統(tǒng)適用對象是型旅游運行商,選擇了現在比較流行的MySQL數據庫作為系統(tǒng)數據庫。本章節(jié)將對MVC模式、SSH框架以與MySQL數據庫等技術做簡要介紹。2.1 MVC簡介 MVC是一個設計模式,它
15、強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型Model、視圖View、控制器Controller。它們各自處理自己的任務。 視圖是用戶看到并與之交互的界面。對老式的Web應用程序來說,視圖就是由HTML元素組成的界面,在新式的Web應用程序中,HTML依舊在視圖中扮 演著重要的角色,但一些新的技術已層出不窮,它們包括Macromedia Flash和象XHTML,XML/XSL,WML等一些標識語言和Web services。如何處理應用程序的界面變得越來越有挑戰(zhàn)性。MVC一個大的好處是它能為你的應用程序處理很多不同的視圖。在視圖中其實沒有真正的處理發(fā)生
16、,不管這些數據是聯機存儲的還是一個雇員列表,作為視圖來講,它只是作為一種輸出數據并允許用戶操縱的方式。模型表示企業(yè)數據和業(yè)務規(guī)則。在MVC的三個部件中,模型擁有最多的處理任務。例如它可能用象Es和ColdFusion Components這樣的構件對象來處理數據庫。被模型返回的數據是中立的,就是說模型與數據格式無關,這樣一個模型能為多個視圖提供數據。由于應用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性??刂破鹘邮苡脩舻妮斎氩⒄{用模型和視圖去完成用戶的需求。所以當單擊Web頁面中的超和發(fā)送HTML表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調用哪個模型
17、構件去處理請求,然后再確定用哪個視圖來顯示返回的數據。MVC模式三核心部件關系圖如下圖2-1。 Controller User Action UpdateModelView Update Notify 圖2-1 MVC模型圖2.1.1MVC的優(yōu)點低耦合性視圖層和業(yè)務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應用的業(yè)務流程或者業(yè)務規(guī)則的改變只需要改動MVC的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應用程序的數據層和業(yè)務規(guī)則。高重用性和可適用性隨著技術的不斷進步,現在需要用越來越多的方式來訪問應用程序。MVC模式允許你使用各種不同樣式的視圖來訪問同一
18、個服務器端的代碼。它包括任何WEB( )瀏覽器或者無線瀏覽器(wap),比如,用戶可以通過電腦也可通過手機來訂購某樣產品,雖然訂購的方式不一樣,但處理訂購產品的方式是一樣的。由于模型返回的數據沒有進行格式化,所以同樣的構件能被不同的界面使用。例如,很多數據可能用HTML來表示,但是也有可能用WAP來表示,而這些表示所需要的命令是改變視圖層的實現方式,而控制層和模型層無需做任何改變。較低的生命周期成本MVC使降低開發(fā)和維護用戶接口的技術含量成為可能??焖俚牟渴鹗褂肕VC模式使開發(fā)時間得到相當大的縮減,它使程序員(Java開發(fā)人員)集中精力于業(yè)務邏輯,界面程序員(HTML和JSP開發(fā)人員)集中精力
19、于表現形式上??删S護性分離視圖層和業(yè)務邏輯層也使得WEB應用更易于維護和修改。有利于軟件工程化管理由于不同的層各司其職,每一層不同的應用具有某些一樣的特征,有利于通過工程化、工具化管理程序代碼。2.2 SSH框架簡介SSH框架是J2EE開發(fā)的一個流行組合框架,其中SSH是Struts+Spring+Hibernate三個單詞縮寫。(1) S表示層框架Struts Struts是一個在JSP Model2基礎上實現的MVC框架,主要分為模型(Model)、視圖(Viewer)和控制器(Controller)三部分,其主要的設計理念是通過控制器將表現邏輯和業(yè)務邏輯解耦,以提高系統(tǒng)的可維護性、可擴展
20、性和可重用性。(2)S業(yè)務邏輯層框架Spring Spring是一個解決了許多J2EE開發(fā)中常見問題并能夠替代E技術的強大的輕量級框架。這里所說的輕量級指的是Spring框架本身,而不是指Spring只能用于輕量級的應用開發(fā)。Spring的輕盈體現在其框架本身的基礎結構以與對其他應用工具的支持和裝配能力。與E這種龐然大物相比,Spring可使程序研發(fā)人員把各個技術層次之間的風險降低。 Spring框架的核心是控制翻轉IoC(Inversion of Control)/依賴注入DI(Dependence Injection)機制。IoC是指由容器中控制組件之間的關系(這里,容器是指為組件提供特定
21、服務和技術支持的一個標準化的運行時的環(huán)境)而非傳統(tǒng)實現中由程序代碼直接操控,這種將控制權由程序代碼到外部容器的轉移,稱為“翻轉”3。DI是對IoC更形象的解釋,即由容器在運行期間動態(tài)地將依賴關系(如構造參數、構造對象或接口)注入到組件之中3。Spring采用設值注入(使用Setter方法實現依賴)和構造子注入(在構造方法中實現依賴)的機制,通過配置文件管理組建的協(xié)作對象,創(chuàng)建可以構造組件的IoC容器。這樣,不需要編寫工廠模式、單例模式或者其他構造的方法,就可以通過容器直接獲取所需的業(yè)務組件。(3)H數據持久層框架Hibernate O/R mapping技術是為了解決關系型數據庫和面向對象的程
22、序設計之間不匹配的矛盾而產生的。Hibernate是目前最為流行的O/R mapping框架,它在關系型數據庫和Java對象之間做了一個自動映射,使得程序員可以以非常簡單的方式實現對數據庫的操作。SSH框架關系如下圖2-2。PersistenceLayer HibernateDataSource/Connection Pool Query LanguageSupport and Other Hibernate service BussinessLayer Spring TransactionHibernateSession ManagementBusiness Service Classes
23、UILayer Struts-MVC Struts ActionActionForm JSPStruts-config.xml etcDAO classesService Locator Domain Model Business Objects 圖2-2 SSH框架關系圖2.3 MySQL數據庫簡介MySQL關系數據庫服務器大約在15年前脫胎于一個公司的部項目,最初由瑞典TcXDataKonsult AB (AB是Aktiebolag的縮寫,在瑞典語中表示公司)的員工發(fā)起,這個稱為MySQL的項目在1996年底開始公司發(fā)行。該軟件迅速流行起來,所以他們在2001年成立了一家完全致力于MySQ
24、L服務和產品的公司,稱為MySQLAB。由于一開始就獲利頗豐,MySQLAB飛速發(fā)展,在多個國家成立了辦事處,吸引了大量風險投資資金,并開始與很多重量級公司合作,包括Red Hat、Veritas、Novell、Rackspace。MySQL公司的發(fā)展因2008年被Sun Microsystems收購而終結,而后者則于2009年初被Oracle公司買進。從1996年首次發(fā)行開始,MySQL的發(fā)開人員就將重點放在了軟件性能和可拓展性上。其結果是得到了一個高度優(yōu)化的產品,但是缺乏企業(yè)級數據庫產品的很多標準特征,例如存儲過程、觸發(fā)器和事務。然而,該產品仍然吸引了大量的用戶,這些用戶更注重速度和可拓展
25、性,而不那么關心平常不太使用的功能(隨后的版本又包括了這樣一些特征,并吸引了更多的用戶)。盡管如此,MySQL仍有由于一下特點而風靡:使用C和C+編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng);為多種編程語言提供了API。這些編程語言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等;支持多線程,充分利用CPU資源 ;優(yōu)化的SQL查詢算法,有效地提高查詢速度 ;既能夠作為一個
26、單獨的應用程序應用在客戶端服務器網絡環(huán)境中,也能夠作為一個庫而嵌入到其他的軟件中提供多語言支持,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數據表名和數據列名 ;提供TCP/IP、ODBC和JDBC等多種數據庫連接途徑;提供用于管理、檢查、優(yōu)化數據庫操作的管理工具;可以處理擁有上千萬條記錄的大型數據庫 ;支持多種存儲引擎。2.3 本章技術小結本章主要介紹了最新的MVC優(yōu)秀的設計模式、J2EE開發(fā)的一個流行組合SSH框架,以與MySQL數據庫。在我的系統(tǒng)開發(fā)過程中,這些技術都有相應的應用到我的圖書管理系統(tǒng)中。第三章 系統(tǒng)概要設計系統(tǒng)概要設計是系統(tǒng)實現一個重要的
27、前期工作。本章節(jié)將結合功能設計、模塊劃分和子模塊功能設計與流程三個方面對該系統(tǒng)的概要設計做詳細的說明。3.1 功能設計本系統(tǒng)是基于B/S模式的旅游管理系統(tǒng)的設計與實現。系統(tǒng)開發(fā)使用軟件有MyEclipse8.5、MySQL、Dreamwear8.0等,系統(tǒng)功能主要包括登錄,系統(tǒng)設置,讀者管理,圖書管理,圖書借還,系統(tǒng)查詢等。本系統(tǒng)設計實現了用戶登錄、系統(tǒng)設置、讀者管理、圖書管理、圖書借還、系統(tǒng)查詢等模塊。系統(tǒng)模塊結構參考圖3-1。圖書管理系統(tǒng)讀者管理模塊用戶登錄模塊系統(tǒng)設置模塊更改口令模塊圖書借還模塊圖書管理模塊系統(tǒng)查詢模塊圖3-1圖書管理系統(tǒng)模塊3.2 模塊具體劃分系統(tǒng)主要劃分為四大模塊,分
28、別是用戶登錄模塊、系統(tǒng)設置模塊、讀者管理模塊、圖書管理模塊和圖書借還等模塊。其模塊具體劃分參考圖3-2。圖書館管理系統(tǒng)系統(tǒng)設置讀者管理圖書借還圖書管理圖書館信息管理員設置讀者類型管理讀者檔案管理圖書類型管理圖書檔案管理圖書借閱圖書歸還系統(tǒng)查詢參數設置書架設置圖書續(xù)借圖書檔案查詢圖書借閱查詢借閱到期提醒更改口令退出系統(tǒng)3-2 圖書管理系統(tǒng)功能模塊具體劃分圖3.3 子模塊功能設計與流程為了能更好地完成系統(tǒng)實現,本文對系統(tǒng)各子模塊功能設計以與流程做了詳細的說明。3.3.1 登錄模塊用戶輸入用戶密碼,系統(tǒng)驗證,失敗時返回登錄頁面,成功時進入主界面。登陸成功,將用戶信息保存Session里,便于用戶信息
29、提取。設計流程圖參考圖3-3。 用戶登錄訪問login.jsp信息錄入錯誤提示登錄驗證error successUser>Session進入main.jsp 圖3-3 登錄模塊程序流程3.3.2 系統(tǒng)設置模塊主要操作:對管理員、書架等的增加、修改、刪除、查詢?;静僮髁鞒虆⒖紙D3-4。操作說明:1、 增加驗證錄入信息是否正確,確認正確,成功后顯示信息列表。2、 修改驗證修改信息是否正確,確認修改,成功后顯示信息列表。3、 刪除選擇刪除項,確認刪除后,刪除選擇數據,成功后顯示回信息列表。4、 查詢查詢所有的管理員、書架等信息。查詢流程參考圖3-5。系統(tǒng)設置信息輸入查詢數據錄入數據修改、刪除
30、數據圖3-4 系統(tǒng)設置基本操作基本操作刪除增加、修改選擇數據錄入信息信息判斷錯誤提示刪除判斷錯誤提示 N N Y Y信息列表信息列表圖3-5基本操作的程序流程3.3.3 讀者管理模塊主要操作:對讀者信息的維護,包括增、刪、查、改等。程序流程參考圖3-4和圖3-5。3.3.4 圖書管理模塊主要操作:對圖書信息的維護,包括增、刪、查、改等。程序流程參考圖3-4和圖3-5。3.3.4 圖書借還模塊主要操作:對圖書的管理,包括圖書借閱、圖書續(xù)借、圖書歸還等。程序流程參考圖3-6、圖3-7和圖3-8。錄入讀者條形碼選擇圖書輸入圖書的條形碼或書名完成圖書借閱顯示讀者信息 確認確認圖3-6圖書借閱的程序流程
31、顯示該讀者所借的所有書籍錄入讀者條形碼選擇續(xù)借圖書顯示讀者信息完成圖書續(xù)借圖3-7圖書續(xù)借的程序流程顯示該讀者所借的所有書籍錄入讀者條形碼選擇歸還圖書顯示讀者信息完成圖書歸還圖3-8圖書續(xù)借的程序流程3.3.4 系統(tǒng)查詢模塊主要操作:對圖書的相關查詢,包括圖書檔案查詢、圖書借閱查詢、借閱到期提醒等。程序流程參考圖3-9。信息查詢模糊查詢等值查詢選擇條件選擇條件錄入部分信息錄入完整信息錯誤提示查詢判斷查詢判斷錯誤提示 N N Y Y 查詢查詢結果信息列表結果信息列表圖3-9 查詢操作流程圖第四章 數據庫設計4.1數據庫設計概述計算機信息系統(tǒng)以數據庫為核心,在數據庫管理系統(tǒng)的支持下,進行信息的收集
32、、整理、存儲、檢索、更新、加工、統(tǒng)計和傳播等操作。 為了使現實世界的信息流計算機化,并對計算機化的信息進行各種操作,就是如何利用數據庫管理系統(tǒng)、系統(tǒng)軟件和相關硬件系統(tǒng),將用戶的要求轉化成有效的數據結構,并使數據庫結構易于實現用戶新的要求的過程。 確切的說,數據庫設計是指對于一個給定的應用環(huán)境,提供一個確定最優(yōu)數據模型與處理模式的邏輯設計,以與一個確定數據庫存儲結構與存取方法的物理設計,建立起既能反映現實世界信息和信息聯系,滿足用戶數據要求和加工要求,又能被某個數據庫管理系統(tǒng)所接受,同時能實現系統(tǒng)目標,并有效存取數據的數據庫。 根據軟件工程的思想,數據庫設計的周期可以劃分為六個階段: 規(guī)劃階段、
33、需求分析階段 、設計階段、程序編制階段 、調試階段、運行和維護階段 。數據庫設計是要在一個給定的應用環(huán)境(DBMS)中,通過合理的邏輯設計和有效的物理設計,構造較優(yōu)的數據庫模式、子模式,建立數據庫和設計應用程序,滿足用戶的各種信息需求。物理結構設計的原則如下:(1) 盡可能的減少數據冗余和重復(2) 結構設計與操作設計相結合(3) 數據結構具有相對的穩(wěn)定性?;谝陨显O計原則,系統(tǒng)設計了一個數據庫,包含基本信息表(如圖書信息表、系統(tǒng)用戶表等)與幾個實體聯系建模后的表(如借閱信息表、會員信息表等)。為了加快系統(tǒng)訪問的速度把這些表放在一個數據庫中。4.2數據字典有了系統(tǒng)的數據流圖后,還有相當多的數據
34、信息如圖書、借閱、歸還等信息需要進一步描述,這就是需要定義數據字典,才能把現有的系統(tǒng)描述清楚。列出系統(tǒng)的主要數據字典。名稱:管理員描述:記錄管理員信息定義:管理員信息=管理員ID+管理員密碼輸入數據:管理員信息輸出數據:管理員信息名稱:圖書信息表結構描述:記錄所有圖書的基本情況定義:圖書信息=圖書編號+ISBN號+索引號+圖書類別+圖書名稱+語種+原名+頁碼+作者+價格+出版時間+登記日期+備注輸入數據:圖書信息輸出數據:圖書信息名稱:讀者信息表結構描述:記錄所有讀者的基本情況定義:讀者信息=讀者編號+性別+類別+號+辦證日期+證有效期+工作單位+E-mail+聯系輸入數據:讀者信息輸出數據:
35、讀者信息名稱:借書登記表結構描述:記錄所有圖書的借閱情況定義:借書信息=讀者編號+讀者編號+讀者類別+圖書編號+圖書類別+圖書名稱+原名+作者+借出日期+應還日期輸入數據:借書信息輸出數據:借書信息名稱:記錄歸還登記表結構描述:記錄所有圖書的歸還情況定義:歸還信息=讀者編號+讀者編號+讀者類別+圖書編號+圖書類別+圖書名稱+原名+作者+借出日期+應還日期+實還日期+罰款輸入數據:歸還信息輸出數據:歸還信息4.3數據庫的邏輯設計在需求分析階段已完成該系統(tǒng)所有的數據分析。根據該階段所建立的概念模型,已經得出滿足系統(tǒng)設計要求的幾個關系描述,該階段的主要工作就是把前一階段的成果轉化為具體的數據庫。下面
36、給出概念結構設計得E-R圖。1:管理員實體E-R圖: 管理員密碼用戶ID圖4.1 管理員實體E-R圖2:會員信息實體E-R圖:編號 讀者XX條形碼電子郵件職業(yè)類型圖4.2 讀者實體E-R圖3:圖書信息實體E-R圖:出版日期 條形碼 圖書登記日期編號名稱類別數量 價格作者 圖4.3 圖書實體E-R圖4:借書信息實體E-R圖:出版 讀者編號 借書讀者XX書籍類別書籍編號應還日期借出日期書籍名稱書籍作者讀者類別圖4.4 借書實體E-R圖6:還書信息實體E-R圖:實還日期 讀者編號 還書操作員讀者XX書籍類別書籍編號應還日期書籍名稱借出日期讀者類別 書籍作者圖4.5還書實體E-R圖7:總體E-R圖:權
37、限管理參數管理讀者管理管理員圖書管理讀者圖書歸還借閱圖書館信息管理信息管理 1 1 N N M M N N N 圖4.6總體E-R圖4.4 數據庫表tb_manager表是用戶記錄用戶的信息(管理員信息表)管理員信息表主要用來保存管理員信息。表tb_manager的結構如表4-4-1所示。字段名稱數據類型是否為空是否主鍵默認值描述idInt(10)unsigncdNOYESID自動編號nameVarchar(30)YESNULL管理員名稱pwdVarchar(30)YESNULL密碼表4-4-1tb_purview(權限表)權限表主要用來保存管理員的權限信息,該表中的id字段與管理員信息表(t
38、b_ purview)中的id字段關聯。表tb_ purview的結構如表4-4-2所示。字段名稱數據類型是否為空是否主鍵默認值描述idInt(11)NOYES0管理員ID號syssetTinyint(1)YES0系統(tǒng)設置readersetTinyint(1)YES0讀者管理booksetTinyint(1)YES0圖書管理borrowbackTinyint(1)YES0圖書借還sysqueryTinyint(1)YES0系統(tǒng)查詢表4-4-2tb_parameter(參數設置表)參數設置表主要用來保存辦證費與書證的有效期限等信息。表tb_parameter的結構如表4-4-3所示字段名稱數據類
39、型是否為空是否主鍵默認值描述idInt(10)unsigncdNOYESID(自動編號)costInt(10)unsigncdYESNULL辦證費validityInt(10)unsigncdYESNULL有效期限表4-4-3tb_booktype(圖書類型表)主要用來保存圖書類型信息。表tb_booktype的結構如表4-4-4所示。字段名稱數據類型是否為空是否主鍵默認值描述idInt(10)unsigncdNOYESID(自動編號)typenameVarchar(30)YESNULL類型名稱daysInt(10)unsigncdYESNULL可借天數表4-4-4tb_bookcase(書架
40、信息表)書架信息表主要用來保存書架信息。表tb_bookcase的結構如表4-4-5所示。字段名稱數據類型是否為空是否主鍵默認值描述idInt(10)unsigncdNOYESID(自動編號)nameVarchar(30)YESNULL書架名稱表4-4-5tb_bookinfo(圖書信息表).該表用于保存圖書信息。表tb_bookinfo的結構如表4-4-6所示。字段名稱數據類型是否為空是否主鍵默認值描述barcodevarchar(30)YESNULL條形碼booknamevarchar(70)YESNULL書名typeidint(10)unsignedYESNULL類型authorvarc
41、har(30)YESNULL作者translatorvarchar(30)YESNULL譯者ISBNvarchar(20)YESNULLpricefloat(8,2)YESNULL價格pageint(10)unsignedYESNULL頁碼bookcaseint(10)unsignedYESNULL書架intTimedateYESNULL錄入時間operatorvarchar(30)YESNULL操作員deltinyint(1)YES0是否刪除idint(11)NOYESID(自動編號)表4-4-6tb_borrow(圖書借閱信息表)用于保存圖書信息。表tb_borrow如表4-4-7所示。字
42、段名稱數據類型是否為空是否主鍵默認值描述idint(10)unsignedNOYESID(自動編號)readeridint(10)unsignedYESNULL讀者編號bookidint(10)YESNULL圖書編號borrowTimedateYESNULL借書編號backtimedateYESNULL應還時間operatorvarchar(30)YESNULL操作員ifbacktinyint(1)YES0是否歸還表4-4-7tb_giveback(圖書歸還信息表)圖書歸還信息表主要用來保存圖書歸還信息。表tb_giveback的結構如表4-4-8所示。字段名稱數據類型是否為空是否主鍵默認值描
43、述idint(10)unsignedNOYESID(自動編號)readeridint(11)YESNULL讀者編號bookidint(11)YESNULL圖書編號backTimedateYESNULL歸還時間operatorvarchar(30)YESNULL操作員表4-4-8tb_publishing(信息表)信息表主要用來保存信息。表tb_publishing的結構如表4-4-9所示。字段名稱數據類型是否為空是否主鍵默認值描述ISBNvarchar(30)YESNULLISBN號pubnamevarchar(30)YESNULL名稱表4-4-9tb_reader(讀者信息表)讀者信息表主要
44、用來保存讀者信息。表tb_reader的結構如表4-4-10所示。字段名稱數據類型是否為空是否主鍵默認值描述idint(10)unsignedNOYESID(自動編號)namevarchar(20)YESNULLsexvarchar(4)YESNULL性別barcodevarchar(30)YESNULL條形碼vocationvarchar(50)YESNULL職業(yè)birthdaydateYESNULL出生日期paperTypevarchar(10)YESNULL有效證件paperNOvarchar(20)YESNULL證件telvarchar(20)YESNULLemailvarchar(1
45、00)YESNULL電子createDatedateYESNULL登記日期operatorvarchar(30)YESNULL操作員remarktextYESNULL備注typeidint(11)YESNULL類型表4-4-10tb_readertype(讀者類型信息表)讀者類型信息表主要用來保存讀者類型信息。表tb_readertype的結構如表4-4-11所示。字段名稱數據類型是否為空是否主鍵默認值描述idint(10)unsignedNOYESID(自動編號)namevarchar(50)YESNULL名稱numberint(4)YESNULL可借數量表4-4-11tb_library(
46、圖書館信息表)圖書館信息表主要用來保存圖書館的基本信息。表tb_library的結構如表4-4-12所示。字段名稱數據類型是否為空是否主鍵默認值描述idint(10)unsignedNOYESID(自動編號)librarynamevarchar(50)YESNULL館名curatorvarchar(10)YESNULL館長telvarchar(20)YESNULL聯系addressvarchar(100)YESNULLemailvarchar(100)YESNULLEmailurlvarchar(100)YESNULL網址creatDatedateYESNULL建館日期introducetex
47、tYESNULL簡介表4-4-12第五章 系統(tǒng)實現系統(tǒng)給圖書館提供了系統(tǒng)設置、讀者管理、圖書管理、圖書借還、系統(tǒng)查詢等功能。本章節(jié)詳細地介紹了每個子模塊實現的過程,同時也列出了部分主要的源代碼以供參考。5.1 登錄模塊實現過程:登錄界面,輸入用戶名和密碼,后臺Action層獲取信息,通過過service層調用Dao層中的managerDAO.java文件中的checkManager()方法進行驗證用戶登陸。運行頁面效果如下圖5-1:圖5-1 登錄頁面登錄實現主要代碼:publicint checkManager(ManagerForm managerForm) int flag = 0;ChS
48、tr chStr = new ChStr();String sql = "SELECT * FROM tb_manager where name='"+ chStr.filterStr(managerForm.getName() + "'"/ 過濾字符串中的兇險字符ResultSet rs = conn.executeQuery(sql);try / 此處需要捕獲異常,當程序出錯時,也需要將標志變量設置為0if (rs.next() String pwd = chStr.filterStr(managerForm.getPwd(); /
49、獲取輸入的密碼并過濾輸入字符串中的危險字符if (pwd.equals(rs.getString(3) / 判斷密碼是否正確flag = 1; else flag = 0; else flag = 0; catch (SQLException ex) flag = 0; finally conn.close();/ 關閉數據庫連接return flag;5.2 管理員設置增加系統(tǒng)管理員,可以增加、修改、刪除系統(tǒng)管理員用戶。如下圖5-2所示:圖5-2 管理員設置頁面 管理員設置DAO包中manager.java文件主要實現代碼:publicCollection query(String queryif) ManagerForm managerForm = null;/ 聲明ManagerForm類的對象Collection managercoll = newArrayList();String sql = ""if (query
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國游泳池太陽蓋行業(yè)深度研究分析報告
- 番茄項目可行性研究報告
- 2025-2030年中國手動出錫焊槍行業(yè)深度研究分析報告
- 2025-2030年中國精油嫩白緊膚面膜行業(yè)深度研究分析報告
- 2025年高錳酸鹽行業(yè)市場需求分析報告及未來五至十年行業(yè)預測報告
- 2025-2030年籃球鞋行業(yè)市場調研及前景趨勢預測報告
- 2025-2030年中國鋼制柔性防水套管項目投資可行性研究分析報告
- 賣房子合同6篇
- 壓鑄射燈買賣合同6篇
- 運輸委托合同 貨物運輸委托合同9篇
- 深靜脈血栓形成的診斷和治療指南文檔
- 浙江省環(huán)大羅山聯盟2023-2024學年高一下學期4月期中考試歷史試題(解析版)
- 建筑邊坡工程監(jiān)測技術標準
- 《化學與社會發(fā)展》單元檢測3
- 基于stm32的智能煙灰缸設計
- 2023年江蘇省徐州市中考地理真題含解析
- 如何有效利用碎片時間學習
- 產品開發(fā)項目管理
- 你當像鳥飛往你的山讀書分享
- 醫(yī)院安全風險分級管控清單
- 河南煙草公司招聘考試真題
評論
0/150
提交評論