![畢業(yè)設(shè)計論文基于Android平臺的圖書管理系統(tǒng)手機(jī)客戶_第1頁](http://file4.renrendoc.com/view/6926d981fadce1af04b3acaef11682dd/6926d981fadce1af04b3acaef11682dd1.gif)
![畢業(yè)設(shè)計論文基于Android平臺的圖書管理系統(tǒng)手機(jī)客戶_第2頁](http://file4.renrendoc.com/view/6926d981fadce1af04b3acaef11682dd/6926d981fadce1af04b3acaef11682dd2.gif)
![畢業(yè)設(shè)計論文基于Android平臺的圖書管理系統(tǒng)手機(jī)客戶_第3頁](http://file4.renrendoc.com/view/6926d981fadce1af04b3acaef11682dd/6926d981fadce1af04b3acaef11682dd3.gif)
![畢業(yè)設(shè)計論文基于Android平臺的圖書管理系統(tǒng)手機(jī)客戶_第4頁](http://file4.renrendoc.com/view/6926d981fadce1af04b3acaef11682dd/6926d981fadce1af04b3acaef11682dd4.gif)
![畢業(yè)設(shè)計論文基于Android平臺的圖書管理系統(tǒng)手機(jī)客戶_第5頁](http://file4.renrendoc.com/view/6926d981fadce1af04b3acaef11682dd/6926d981fadce1af04b3acaef11682dd5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、PAGE PAGE 103畢業(yè)設(shè)計學(xué)生姓名 xxx學(xué) 號 08250334專業(yè)班級 通信工程 指導(dǎo)教師 xxx學(xué) 院 計算機(jī)與通信 答辯日期 2012年6月 基于Android平臺的圖書管理系統(tǒng)手機(jī)客戶端開發(fā)The development of library management system is based on the Android platform xxx0825摘要 傳統(tǒng)WEB應(yīng)用只能在PC機(jī)上使用,不能做到隨時隨地的使用,為了解決這樣的不足,基于Android平臺的圖書館管理系統(tǒng)客戶端就應(yīng)運而生。本設(shè)計闡述了在Android平臺下圖書館管理系統(tǒng)的設(shè)計與實現(xiàn)過程,其目的是讓人們能
2、夠在基于Google Android平臺的移動設(shè)備上享用傳統(tǒng)WEB上圖書館管理系統(tǒng)的基本功能。本系統(tǒng)采用C/S結(jié)構(gòu), MVC軟件開發(fā)模式,使用android布局技術(shù)完成UI的設(shè)計,基于Java語言開發(fā)完成,在不同型號的設(shè)備模擬器上測試通過。系統(tǒng)實現(xiàn)了用戶注冊、登錄、查詢圖書以及學(xué)生用戶管理和圖書管理等功能?!安僮骱唵?,功能實用”這是本軟件設(shè)計的核心理念,本系統(tǒng)力求創(chuàng)造最好的用戶體驗。 關(guān)鍵詞:圖書館管理系統(tǒng);ANDROID;客戶端;數(shù)據(jù)庫設(shè)計;服務(wù)器端AbstractThe WEB application can only in traditional PC use, cant do it a
3、t any time and place to use, in order to solve the shortage of such, based on the Android platform of library management system client is made. This paper expounds the workbench Android library management system design and implementation process, and its purpose is to let people can be based on the
4、Google Android platform of mobile devices to enjoy the traditional WEB on the basic functions of the library management system. The system USES the C/S structure, MVC software development model, use android UI design layout complete technology, based on the Java language development completed, in di
5、fferent types of equipment simulator test is passed. The system realizes the user register, login, inquires the books and the students user management and library management etc. Function. The operation is simple, functional practical this is the core idea of the software design, this system is the
6、best tries to create user experience.Key words:library management system;ANDROID; client;database design; server目錄TOC o 1-3 h z u HYPERLINK l _Toc327343955 摘要 PAGEREF _Toc327343955 h I HYPERLINK l _Toc327343956 Abstract PAGEREF _Toc327343956 h II HYPERLINK l _Toc327343957 第1章前言 PAGEREF _Toc327343957
7、 h 1 HYPERLINK l _Toc327343958 1.1 課題研究的目的及意義 PAGEREF _Toc327343958 h 1 HYPERLINK l _Toc327343959 1.2 課題的現(xiàn)狀 PAGEREF _Toc327343959 h 1 HYPERLINK l _Toc327343960 1.3 課題的內(nèi)容 PAGEREF _Toc327343960 h 1 HYPERLINK l _Toc327343961 第2章軟件設(shè)計及開發(fā)工具介紹 PAGEREF _Toc327343961 h 3 HYPERLINK l _Toc327343962 2.1 總體設(shè)計 PA
8、GEREF _Toc327343962 h 3 HYPERLINK l _Toc327343963 2.2 系統(tǒng)結(jié)構(gòu) PAGEREF _Toc327343963 h 3 HYPERLINK l _Toc327343964 2.3 開發(fā)工具介紹和關(guān)鍵技術(shù) PAGEREF _Toc327343964 h 3 HYPERLINK l _Toc327343965 2.3.1 Eclipse的介紹 PAGEREF _Toc327343965 h 3 HYPERLINK l _Toc327343966 2.3.2 MyEclipse與Tomcat介紹 PAGEREF _Toc327343966 h 6 H
9、YPERLINK l _Toc327343967 2.3.3 關(guān)鍵技術(shù)介紹 PAGEREF _Toc327343967 h 7 HYPERLINK l _Toc327343968 第3章系統(tǒng)功能設(shè)計 PAGEREF _Toc327343968 h 8 HYPERLINK l _Toc327343969 3.1 前臺管理 PAGEREF _Toc327343969 h 8 HYPERLINK l _Toc327343970 3.1.1 注冊 PAGEREF _Toc327343970 h 8 HYPERLINK l _Toc327343971 3.1.2 用戶登錄 PAGEREF _Toc327
10、343971 h 8 HYPERLINK l _Toc327343972 3.1.3 圖書查詢 PAGEREF _Toc327343972 h 8 HYPERLINK l _Toc327343973 3.1.4 用戶管理 PAGEREF _Toc327343973 h 9 HYPERLINK l _Toc327343974 3.1.5 圖書管理 PAGEREF _Toc327343974 h 9 HYPERLINK l _Toc327343975 3.2 后臺管理 PAGEREF _Toc327343975 h 9 HYPERLINK l _Toc327343976 3.2.1 注冊管理 PA
11、GEREF _Toc327343976 h 9 HYPERLINK l _Toc327343977 3.2.2登錄管理 PAGEREF _Toc327343977 h 9 HYPERLINK l _Toc327343978 3.2.3 圖書查詢管理 PAGEREF _Toc327343978 h 10 HYPERLINK l _Toc327343979 3.2.4 用戶管理 PAGEREF _Toc327343979 h 10 HYPERLINK l _Toc327343980 3.2.5 圖書管理 PAGEREF _Toc327343980 h 10 HYPERLINK l _Toc3273
12、43981 第4章數(shù)據(jù)庫結(jié)構(gòu)設(shè)計 PAGEREF _Toc327343981 h 11 HYPERLINK l _Toc327343982 4.1 服務(wù)器端數(shù)據(jù)庫設(shè)計 PAGEREF _Toc327343982 h 11 HYPERLINK l _Toc327343983 4.1.1 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 PAGEREF _Toc327343983 h 11 HYPERLINK l _Toc327343984 4.1.2數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計 PAGEREF _Toc327343984 h 13 HYPERLINK l _Toc327343985 第5章模塊開發(fā)及編碼實現(xiàn) PAGEREF _Toc3
13、27343985 h 15 HYPERLINK l _Toc327343986 5.1 服務(wù)器端的設(shè)計搭建java web服務(wù)器 PAGEREF _Toc327343986 h 15 HYPERLINK l _Toc327343987 5.2 連接數(shù)據(jù)庫模塊 PAGEREF _Toc327343987 h 15 HYPERLINK l _Toc327343988 5.3 服務(wù)器功能模塊 PAGEREF _Toc327343988 h 16 HYPERLINK l _Toc327343989 5.3.1 注冊模塊 PAGEREF _Toc327343989 h 16 HYPERLINK l _T
14、oc327343990 5.3.2 登錄模塊 PAGEREF _Toc327343990 h 17 HYPERLINK l _Toc327343991 5.3.3 書籍查詢模塊 PAGEREF _Toc327343991 h 18 HYPERLINK l _Toc327343992 5.3.4 特定用戶查詢模塊 PAGEREF _Toc327343992 h 19 HYPERLINK l _Toc327343993 5.3.5 查詢所有用戶模塊 PAGEREF _Toc327343993 h 20 HYPERLINK l _Toc327343994 5.3.6 添加書籍模塊 PAGEREF _
15、Toc327343994 h 21 HYPERLINK l _Toc327343995 5.4 客戶端的設(shè)計設(shè)計ANDROID UI界面 PAGEREF _Toc327343995 h 22 HYPERLINK l _Toc327343996 5.5 具體功能模塊 PAGEREF _Toc327343996 h 23 HYPERLINK l _Toc327343997 5.5.1 注冊界面 PAGEREF _Toc327343997 h 23 HYPERLINK l _Toc327343998 5.5.2 登錄界面 PAGEREF _Toc327343998 h 26 HYPERLINK l
16、_Toc327343999 5.5.3 學(xué)生用戶書籍查詢界面 PAGEREF _Toc327343999 h 28 HYPERLINK l _Toc327344000 5.5.4 管理員界面 PAGEREF _Toc327344000 h 29 HYPERLINK l _Toc327344001 5.5.5 管理學(xué)生用戶界面 PAGEREF _Toc327344001 h 30 HYPERLINK l _Toc327344002 5.5.6 管理圖書界面 PAGEREF _Toc327344002 h 31 HYPERLINK l _Toc327344003 5.5.7 圖書增加界面 PAGE
17、REF _Toc327344003 h 32 HYPERLINK l _Toc327344004 第6章系統(tǒng)測試 PAGEREF _Toc327344004 h 34 HYPERLINK l _Toc327344005 6.1 用戶注冊測試 PAGEREF _Toc327344005 h 34 HYPERLINK l _Toc327344006 6.2 用戶登錄測試 PAGEREF _Toc327344006 h 34 HYPERLINK l _Toc327344007 6.3 圖書查詢測試 PAGEREF _Toc327344007 h 36 HYPERLINK l _Toc32734400
18、8 6.4用戶管理測試 PAGEREF _Toc327344008 h 36 HYPERLINK l _Toc327344009 6.5 書籍管理測試 PAGEREF _Toc327344009 h 37 HYPERLINK l _Toc327344010 總結(jié) PAGEREF _Toc327344010 h 39 HYPERLINK l _Toc327344011 參考文獻(xiàn) PAGEREF _Toc327344011 h 41 HYPERLINK l _Toc327344012 附錄一核心代碼 PAGEREF _Toc327344012 h 42 HYPERLINK l _Toc327344
19、013 附錄二外文文獻(xiàn)(原文) PAGEREF _Toc327344013 h 43 HYPERLINK l _Toc327344014 附錄三外文文獻(xiàn)(譯文) PAGEREF _Toc327344014 h 52 HYPERLINK l _Toc327344015 致謝 PAGEREF _Toc327344015 h 60第1章 前言1.1 課題研究的目的及意義移動互聯(lián)網(wǎng)時代的來臨,說明一個嶄新的時代開始了。所謂移動互聯(lián)網(wǎng)是將移動通信和互聯(lián)網(wǎng)整合在一起,移動設(shè)備(包括手機(jī)和上網(wǎng)本)可以隨時隨地地訪問互聯(lián)網(wǎng)資源和應(yīng)用。智能手機(jī)是移動互聯(lián)網(wǎng)時代一個標(biāo)志性的客戶端工具,它和傳統(tǒng)的手機(jī)是有區(qū)別的,它
20、就像一臺“小電腦”,具有獨立的操作系統(tǒng),可以自由安裝、卸載軟件,具有強(qiáng)大的計算和存儲能力,可以通過移動通信網(wǎng)絡(luò)來實現(xiàn)無線網(wǎng)絡(luò)接入。對于移動終端設(shè)備飛速發(fā)展的今天,傳統(tǒng)WEB上的應(yīng)用出現(xiàn)在手機(jī)終端是一個大的趨勢。而基于Android開發(fā)的圖書館管理系統(tǒng)手機(jī)客戶端,正是對這一趨勢的良好體現(xiàn),Android平臺下的圖書館管理系統(tǒng)的開發(fā),能很好的為用戶提供方便,用戶能通過它能隨時隨地的了解系統(tǒng)的實時信息,做到信息的實時化。通過Android平臺下的圖書館管理系統(tǒng)客戶端的開發(fā),與傳統(tǒng)WEB應(yīng)用進(jìn)行良好的互補(bǔ)。同時,對于校內(nèi)的圖書館管理系統(tǒng)來說,手機(jī)對于學(xué)生是必不可少的一個物品,手機(jī)客戶端這種形式的圖書館
21、管理系統(tǒng),能更加貼近學(xué)生的生活習(xí)慣,并且適合學(xué)生年齡段的習(xí)性,這對學(xué)生更多的接觸到圖書館的信息有一定得促進(jìn)作用。1.2 課題的現(xiàn)狀目前國內(nèi)的基于Android平臺的圖書館管理系統(tǒng)客戶端還不成熟,大多數(shù)的圖書館管理系統(tǒng)都出現(xiàn)在傳統(tǒng)的WEB應(yīng)用上,在這個環(huán)境下,基于Android平臺的圖書館管理系統(tǒng)客戶端屬于一個嶄新的應(yīng)用。作為一個不太成熟的應(yīng)用,大多數(shù)圖書館管理系統(tǒng)都是出現(xiàn)在學(xué)習(xí)android開發(fā)的一個項目中,作為學(xué)習(xí)中的一個練習(xí)項目。目前,絕大部分的網(wǎng)絡(luò)應(yīng)用都還是傳統(tǒng)的WEB應(yīng)用,但面對Android手機(jī)如此迅速發(fā)展的今天,傳統(tǒng)WEB的應(yīng)用不能滿足人們隨時隨地體驗網(wǎng)絡(luò)應(yīng)用的想法,所以,出現(xiàn)在手
22、機(jī)終端的應(yīng)用將會越來越多,同時其發(fā)展的速度也會越來越快。校內(nèi)圖書館管理系統(tǒng)作為傳統(tǒng)WEB應(yīng)用,也必將在手機(jī)客戶端上得到應(yīng)用。1.3 課題的內(nèi)容由此出現(xiàn)大量的應(yīng)用出現(xiàn)在手機(jī)上,基于Android平臺的圖書館管理系統(tǒng)手機(jī)客戶端是依據(jù)現(xiàn)在的形式所開發(fā)的,它是一套基于開放性的圖書館管理系統(tǒng),它有傳統(tǒng)WEB上圖書館管理系統(tǒng)的大部分功能。整個系統(tǒng)分為前臺界面管理和后臺服務(wù)器管理兩部分,劃分為用戶管理、圖書管理、信息管理等三個部分。在前臺管理中,用戶進(jìn)行注冊、登錄、查詢特定圖書等功能;后臺管理模塊,負(fù)責(zé)控制前臺界面管理的所有功能;本系統(tǒng)設(shè)置了學(xué)生用戶和管理員兩類,兩類用戶都是使用同一個平臺,只是權(quán)限不同。學(xué)
23、生用戶只能注冊、查詢圖書等功能;管理員擁有最高權(quán)限,可以對已經(jīng)畢業(yè)的學(xué)生用戶賬號進(jìn)行刪除,查詢學(xué)生用戶信息,實時更新圖書館的新書,發(fā)布圖書館最新信息等權(quán)限。本圖書館管理系統(tǒng),能夠適用于各類圖書館,具有良好的可操作性,可以隨時的查詢你所需要的圖書信息,只要你的智能手機(jī)安裝了本系統(tǒng)客戶端,系統(tǒng)大大的方便了學(xué)生的圖書查詢的。本系統(tǒng)采用C/S結(jié)構(gòu),后臺服務(wù)器使用Servlet編寫服務(wù)器,同時用Tomcat發(fā)布服務(wù),前臺客戶端環(huán)境使用的是ANDROID控件。通過JDBC來調(diào)用Oracle數(shù)據(jù)庫,來實現(xiàn)手機(jī)客戶端與服務(wù)器之間數(shù)據(jù)傳輸。第2章 軟件設(shè)計及開發(fā)工具介紹為了使軟件開發(fā)能夠順利進(jìn)行,使開發(fā)人員對系
24、統(tǒng)各個模塊的性能、系統(tǒng)接口、系統(tǒng)開發(fā)及運行環(huán)境和計算機(jī)內(nèi)部處理的邏輯及物理流程有更清晰的認(rèn)識,更利于源程序的開發(fā),現(xiàn)對系統(tǒng)的總體設(shè)計和系統(tǒng)結(jié)構(gòu)設(shè)計及開發(fā)工具和關(guān)鍵技術(shù)做詳細(xì)說明。2.1 總體設(shè)計基于ANDROID平臺開發(fā)的圖書館管理系統(tǒng)客戶端從設(shè)計者的角度來看,用戶角色分為學(xué)生用戶和管理員兩類;功能包括注冊、登錄、密碼找回、書籍查詢、圖書實時更新、普通用戶管理共六大部分。其中系統(tǒng)管理中的學(xué)生用戶權(quán)限包括注冊、登錄、密碼找回、書籍查詢等四個模塊;管理員的權(quán)限則是除了學(xué)生用戶具有的權(quán)限外還有實時更新圖書信息、學(xué)生用戶管理等模塊。從使用者的角度來看分為前臺和后臺管理兩大部分。后臺管理模塊是本系統(tǒng)的關(guān)
25、鍵部分之一,它是系統(tǒng)維護(hù)和信息管理平臺。根據(jù)現(xiàn)實需要,本系統(tǒng)后臺管理用戶有兩類:管理員和學(xué)生用戶。這兩類用戶使用的系統(tǒng)管理平臺都是同一個平臺上,只不過他們執(zhí)行的權(quán)限不同。2.2 系統(tǒng)結(jié)構(gòu)本系統(tǒng)總體邏輯結(jié)構(gòu)為C/S結(jié)構(gòu),結(jié)構(gòu)圖如圖2-1所示:圖2.1C/S結(jié)構(gòu)圖2.3 開發(fā)工具介紹和關(guān)鍵技術(shù)2.3.1Eclipse的介紹Eclipse 是一個開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是,Eclipse 附帶了一個標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Kit,JDK)。Eclips
26、e的發(fā)展史,版本代號 平臺版本 主要版本發(fā)行日期 SR1發(fā)行日期 SR2發(fā)行日期,如下:表2-1Eclipse的版本號版本代號平臺版本主要版本發(fā)行日期SR1發(fā)行日期SR2發(fā)行日期Callisto3.22006年6月26日N/AN/AEuropa3.32007年6月27日2007年9月28日2008年2月29日Ganymede3.42008年6月25日2006年9月24日2009年2月25日Galileo3.52009年6月24日2006年9月25日2010年2月26日Helios3.62006年6月23日2006年9月24日2011年2月25日Indigo3.72006年6月22日2006年9
27、月23日2012年2月24日J(rèn)uno(預(yù)定)3.8及4.22006年6月27日2006年9月28日2013年2月22日Kepler4.32006年6月26日2006年9月27日2014年2月28日Eclipse是一個開放源代碼的軟件開發(fā)項目,專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺。它主要由Eclipse項目、Eclipse工具項目和Eclipse技術(shù)項目三個項目組成,具體包括四個部分組成Eclipse Platform、JDT、CDT和PDE。JDT支持Java開發(fā)、CDT支持C開發(fā)、PDE用來支持插件開發(fā),Eclipse Platform則是一個開放的可擴(kuò)展IDE
28、,提供了一個通用的開發(fā)平臺。它提供建造塊和構(gòu)造并運行集成軟件開發(fā)工具的基礎(chǔ)。Eclipse Platform允許工具建造者獨立開發(fā)與他人工具無縫集成的工具從而無須分辨一個工具功能在哪里結(jié)束,而另一個工具功能在哪里開始。Android工程是在Eclipse工具上編寫的,進(jìn)行android工程的編寫,首先需要在Eclipse上安裝ADT插件,然后指定SDK所在的路徑,便可以創(chuàng)建android虛擬機(jī)了。在Eclipse下創(chuàng)建虛擬機(jī)的步驟如下:安裝ADT插件在Eclipse單擊菜單欄的Help,在Help里面選中Install NewSoftware選項,之后便可以出現(xiàn)如下界面:圖2.2ADT安裝步驟
29、界面指定好你的ADT路徑后,便可以安裝好ADT插件。導(dǎo)入AndroidSDK安裝好ADT插件后,單擊Eclipse菜單欄Windows下找到preperence,點擊進(jìn)入,得到如下界面:圖2.3 AndroidSDK安裝界面在左邊選項選中Android,在SDK Location下導(dǎo)入AndroidSDK路徑,點擊Apply應(yīng)用,便會導(dǎo)入Android的各個版本。創(chuàng)建虛擬機(jī)安裝好ADT和導(dǎo)入AndroidSDK成功后,便可以在菜單欄Windows下找到AVD manage選項,單擊進(jìn)入后便有新建android虛擬機(jī)界面,在創(chuàng)建界面設(shè)置好虛擬機(jī)參數(shù)點擊確定后,就創(chuàng)建好了一個android虛擬機(jī)。
30、創(chuàng)建好虛擬機(jī)后,點擊開始便可以運行一個android虛擬機(jī),虛擬機(jī)運行成功界面如下:圖2.4android虛擬機(jī)視圖虛擬機(jī)模擬的是android智能手機(jī)的界面,通過操作虛擬機(jī)可以體驗到android智能手機(jī)的部分應(yīng)用。同時虛擬機(jī)是作為開發(fā)的android應(yīng)用運行的場所,他提供基本的人機(jī)交互功能。2.3.2MyEclipse與Tomcat介紹MyEclipse是一個十分優(yōu)秀的用于開發(fā)Java, J2EE的Eclipse插件集合。MyEclipse企業(yè)級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對EclipseIDE的擴(kuò)展,利用它我們可以在
31、數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,支持HTML,Struts,JSP,Javascript, Hibernate,MyEclipse,CSS,Spring,SQL的功能非常強(qiáng)大,支持也十分廣泛,尤其是對各種開源產(chǎn)品的支持十分不錯。在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類: 1JavaEE模型 2WEB開發(fā)工具 3EJB開發(fā)工具 4 應(yīng)用程序服務(wù)器的連接器 5JavaEE項目部署服務(wù) 6 數(shù)據(jù)庫服務(wù) 7MyEclipse整合幫助 對于以上每一種功能上的類別,在Ec
32、lipse中都有相應(yīng)的功能部件,并通過一系列的插件來實現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進(jìn)行單獨的擴(kuò)展和升級。簡單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的JavaEE集成開發(fā)環(huán)境,支持代碼編寫、配置、測試以及除錯,MyEclipse6.0以前版本需先安裝Eclipse。MyEclipse6.0以后版本安裝時不需安裝Eclipse。本系統(tǒng)是基于C/S架構(gòu)的,所以需要在MyEclipse上創(chuàng)建服務(wù)器端,利用Java EE中的servlet來提供服務(wù),并將其部署在Tomcat下。需要解決的是創(chuàng)建不同的servlet來
33、提供不同的服務(wù)。Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因為Tomcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。目前最新版本是7.0。Tomcat 很受廣大程序員的喜歡,因為它運行時
34、占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat 是一個輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對于一個初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨立運行的,所以當(dāng)你 Apache Tomcat運行tomcat 時,它實際上作為一個與Apache 獨立的進(jìn)程單獨運行的。而Tomcat
35、 實際上運行JSP 頁面和Servlet。另外,Tomcat和IIS、Apache等Web服務(wù)器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認(rèn)模式。不過,Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。目前Tomcat最新版本為7.0.27 Released。2.3.3關(guān)鍵技術(shù)介紹本軟件采用java作為開發(fā)語言,布局和數(shù)據(jù)存儲是開發(fā)本軟件的關(guān)鍵技術(shù),布局用來設(shè)計用戶交互界面,用戶界面的設(shè)計是否美觀和合理直接影響用戶體驗,因此運用好布局技術(shù)是直接和用戶相關(guān)的,而數(shù)據(jù)存儲技術(shù)則記錄了用戶所有的操作數(shù)據(jù)和用戶所需要提
36、取的數(shù)據(jù)。在android中,軟件UI通常使用xml技術(shù)設(shè)計,而xml中控件的位置和狀態(tài)則離不開布局的使用,android中常用的布局有5種,分別是:AbsoluteLayout、LinearLayout、RelativeLayout、FrameLayout、TableLayout,由于布局的使用,并且布局之間可以互相嵌套,使得android軟件UI的設(shè)計變得非常靈活,即使是一些非常復(fù)雜的界面設(shè)計,只要合理的使用布局,也會使開發(fā)變得很容易。Android中數(shù)據(jù)存儲技術(shù)主要有:文件存儲、preference、sqlite、ContentProvider和網(wǎng)絡(luò)存儲,文件存儲是以流的形式讀寫文件,可
37、以以文格的格式,也可以以二進(jìn)制的形式,在java語言中要使用流,則寫入文件的對象必須進(jìn)行序列化,sqlite是嵌入式移動設(shè)備中常用的輕量級數(shù)據(jù)庫,可看作計算機(jī)上使用的sql server、oracle數(shù)據(jù)庫。本系統(tǒng)中,采用的是Oracle數(shù)據(jù)庫進(jìn)行儲存圖書館里的基本信息。第3章 系統(tǒng)功能設(shè)計本系統(tǒng)采用C/S模式開發(fā)的,該系統(tǒng)的客戶端和服務(wù)器端是獨立分開的,這樣的分開也就形成了前臺管理和后臺管理。前臺管理注重用戶的交互是否簡便,后臺管理注重功能的邏輯和與數(shù)據(jù)庫數(shù)據(jù)交互的功能。3.1 前臺管理前臺客戶端的所有功能畫出的功能流程圖如下:圖3.1 前臺客戶端流程圖3.1.1 注冊用戶通過手機(jī)客戶端主界
38、面上的注冊按鈕注冊新的學(xué)生用戶,注冊用戶的信息通過服務(wù)器端和數(shù)據(jù)庫連接,數(shù)據(jù)庫中的用戶表則會生成你注冊的信息,同時在手機(jī)客戶端提示注冊成功。3.1.2 用戶登錄用戶登錄分為兩類用戶:管理員和學(xué)生用戶。可以通過登錄界面中選定身份登錄,服務(wù)器根據(jù)登錄選定的信息選擇數(shù)據(jù)庫中的數(shù)據(jù)表進(jìn)行匹配,用戶名和密碼正確則登錄成功。3.1.3 圖書查詢在查詢界面輸入所需查詢書籍的書名和作者名,通過服務(wù)器端查詢數(shù)據(jù)庫返回你所查詢的書籍信息,書籍信息包括:書名、作者、出版社名、是否被接、剩余本數(shù)等信息。在圖書查詢功能中,運用到了ANDROID的一個自動完成文本的控件,該控件可以通過你輸入的查詢信息列出帶有你輸入字的書
39、名,以方便你的檢索。通過此控件,大大的提高了用戶檢索書籍的效率,同時滿足了模糊查詢的功能,是用戶查詢書籍方便、快捷。3.1.4 用戶管理用戶管理模塊是管理員對學(xué)生用戶賬號的管理,對于某些特殊原因賬號不使用了,比如:學(xué)生畢業(yè)等原因不再使用賬號的問題,管理員有權(quán)利對這類賬號進(jìn)行刪除,同時可以學(xué)生用戶的用戶名查詢學(xué)生用戶的信息。3.1.5 圖書管理這個功能也只有管理員身份才能擁有,管理員通過此功能,可以對圖書進(jìn)行增加、刪出功能。通過這個模塊,管理員可以對新進(jìn)的圖書進(jìn)行添加處理,并能實時發(fā)布新增書籍。對于刪除功能,管理員可以把一些已經(jīng)下架,不再外借的書籍進(jìn)行刪除,以便造成不必要的麻煩。3.2 后臺管理
40、后臺服務(wù)器端的任務(wù)是根據(jù)客戶端送發(fā)送過來的請求,根據(jù)客戶端不同功能模塊,通過檢索數(shù)據(jù)庫不同表格,把檢索結(jié)果返回給客戶端顯示給以用戶,其基本流程圖如下:圖3.2 后臺服務(wù)器端流程圖3.2.1注冊管理注冊用戶提交:向服務(wù)器提交用戶注冊的信息,同時更新到數(shù)據(jù)庫。 注冊管理是后臺的一個重要內(nèi)容,注冊只提供學(xué)生用戶的注冊,這樣可以保證圖書館用戶權(quán)限的穩(wěn)定和安全。通過注冊用戶,用戶才能享受來自手機(jī)客戶端的所有功能。通過手機(jī)客戶端注冊用戶,來作為以后通過手機(jī)客戶端登錄圖書館管理系統(tǒng)的唯一身份認(rèn)證。3.2.2 登錄管理登錄管理:根據(jù)你登錄的信息向服務(wù)器發(fā)送請求,然后和數(shù)據(jù)庫信息進(jìn)行對比,來確認(rèn)用戶登錄的成功與
41、否。登錄時候,首先你必須選定你的登錄身份,是以學(xué)生用戶還是管理員身份登錄,根據(jù)你選擇的不同身份,服務(wù)器向不同的數(shù)據(jù)庫表來核對信息,以通過對用戶信息的核對,以確定所登錄的賬號密碼是否正確。3.2.3 圖書查詢管理圖書查詢管理主要通過圖書的幾個關(guān)鍵信息進(jìn)行查詢,根據(jù)圖書名字和圖書作者向數(shù)據(jù)庫提交信息進(jìn)行條件檢索。通過輸入信息的檢索,返回檢索書籍的基本信息,比如:圖書名字、圖書作者、出版社名、是否被借、剩余數(shù)量等基本信息。3.2.4用戶管理后臺的用戶管理,是處理管理員對有特殊情況的學(xué)生用戶和查詢特定學(xué)生用戶的服務(wù),是與數(shù)據(jù)庫進(jìn)行數(shù)據(jù)更新與交互的服務(wù)。3.2.5 圖書管理后臺的圖書管理,是處理管理員把
42、新書添加到書籍?dāng)?shù)據(jù)庫表的服務(wù),通過添加到數(shù)據(jù)庫表,學(xué)生用戶才能在書籍查詢功能中查詢到新更新的書籍信息。同時,對于不再外借的書籍從數(shù)據(jù)庫刪除,以此來更新數(shù)據(jù)庫中的書籍名稱。第4章 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計4.1 服務(wù)器端數(shù)據(jù)庫設(shè)計采用的是Oracle數(shù)據(jù)庫。在本系統(tǒng)中采用了簡易版的Oracle,即數(shù)據(jù)庫的名字為Oracle XE,首先要解決的是在該數(shù)據(jù)庫里某個用戶下創(chuàng)建表。首先配置Oracle數(shù)據(jù)庫,步驟如下: (1) 以O(shè)racle管理員身份進(jìn)入Oracle,在終端輸入的命令為:sqlplus /as sysdba;(2) 啟動Oracle,在終端輸入的命令為:startup;(3) 創(chuàng)建新的用戶,在終
43、端的命令為:先以管理員身份登錄數(shù)據(jù)庫,然后創(chuàng)建新的用戶的命令為:create user liuyujuan identified by liuyujuan;grant resource,connect to liuyujuan;所創(chuàng)建的用戶賬號和密碼分別為:liuyujuan,liuyujuan;(4)然后以liuyujuan用戶登錄,命令為:sqlplus liuyujuan/liuyujuan。在賬戶liuyujuan下創(chuàng)建數(shù)據(jù)表,以滿足圖書館管理的日常需要,表格名稱分別為: lib_admin,lib_user,lib_books,lib_ret,各個數(shù)據(jù)表的儲存的信息分別為:管理員信息
44、、普通用戶信息、書籍信息、書籍外借信息表。4.1.1 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計在需求分析階段已完成該系統(tǒng)所有的數(shù)據(jù)分析。根據(jù)該階段所建立的概念模型,已經(jīng)得出滿足系統(tǒng)設(shè)計要求的幾個關(guān)系描述,該階段的主要工作就是把前一階段的成果轉(zhuǎn)化為具體的數(shù)據(jù)庫。管理員用戶有用戶名和密碼兩個屬性,通過這兩個屬性來確定管理員用戶的身份是否合法,其中ID為主鍵,其E-R圖如下:圖4.1 管理員E-R圖學(xué)生用戶有用戶名、密碼身份證號、入學(xué)年份、性別、所在學(xué)院名稱等屬性,通過這些屬性,來確認(rèn)學(xué)生信息表的信息,其中主鍵為ID,其E-R圖如下:圖4.2 學(xué)生用戶E-R圖書籍信息表,是用來存儲書籍的基本信息,其數(shù)星星包括書名、作者名
45、、書籍位置、出版社名稱、所屬科目、是否借出、最大借閱時間等,其中自動分配的ID和書名作為聯(lián)合主鍵,其E-R圖如下:圖4.3書籍信息E-R圖外借書籍信息表是用來存儲外借書籍的有關(guān)信息,通過此表格,來獲取該外借書籍的基本狀態(tài),其屬性有書籍編號、書籍名、書籍作者、最大外借時間、實際外借時間、外借時間、借閱者ID,其E-R圖如下:圖4.4書籍外借信息E-R圖對于各個實體之間的關(guān)系E-R圖如下:圖 4.5 實體關(guān)系圖4.1.2 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計依據(jù)數(shù)據(jù)庫的原理,并結(jié)合以上E-R圖,經(jīng)過轉(zhuǎn)化,即可進(jìn)行數(shù)據(jù)庫的物理設(shè)計?;谝陨蠑?shù)據(jù)庫的邏輯設(shè)計,考慮程序設(shè)計的簡易性,同時考慮題目的時間,該系統(tǒng)的數(shù)據(jù)庫采用
46、Oracle簡易版本建立一個數(shù)據(jù)庫,在其下創(chuàng)建4個數(shù)據(jù)表,其結(jié)構(gòu)分別如下各表:表4-1 數(shù)據(jù)表清單表名說明管理員用戶表用于存儲管理員信息表格普通用戶表用于存儲普通用戶信息表格書籍信息表用于存儲書籍基本信息表格書籍外借信息表用于儲存外借書籍的基本信息表4-2 管理員用戶信息表字段名數(shù)據(jù)類型長度主鍵備注ID自動編號10是由數(shù)據(jù)庫sequence自動生成AdminnameVarchar250否管理員的登錄賬號PasswordVarchar250否管理員登錄的密碼表4-3 普通用戶信息表字段名數(shù)據(jù)類型長度主鍵備注ID自動編號10是由數(shù)據(jù)庫sequence自動生成UsernameVarchar250否唯
47、一標(biāo)識用戶,不可缺PasswordVarchar250否普通用戶用戶登錄密碼IndentityidVarchar2100否用戶注冊的身份證號YearVarchar250否用戶入學(xué)年份GenderVarchar230否用戶性別CollegeVarchar250否用戶所在學(xué)院表4-4 書籍信息表字段名數(shù)據(jù)類型長度主鍵備注ID自動編號10聯(lián)合主鍵由數(shù)據(jù)庫sequence自動生成BooknameVarchar250聯(lián)合主鍵書籍名稱BookauthorVarchar250否書籍作者名PhnameVarchar250否出版社名稱LocationVarchar260否所在位置CategoryVarchar2
48、80否所屬科目StatusVarchar220否書籍狀態(tài)RenttimeVarchar220否最大借閱時間表4-5 外借書籍信息表字段名數(shù)據(jù)類型長度主鍵備注IDVarchar210是由數(shù)據(jù)庫自動生成Book_dateVarchar250否外借時間Act_ret_dateVarchar250否實際的外借時間Exp_ret_dateVarchar250否最大的外借時間Book_idVarchar210否書籍編號BooknameVarchar250否書籍名字AuthornameVarchar250否書籍作者名User_idVarchar210否借閱者id第5章 模塊開發(fā)及編碼實現(xiàn)5.1 服務(wù)器端的設(shè)
49、計搭建java web服務(wù)器本軟件是C/S結(jié)構(gòu)的系統(tǒng),因此要先搭建服務(wù)器端,利用Java EE中的servlet來提供服務(wù),并將其部署在Tomcat下。需要解決的是創(chuàng)建不同的servlet來提供不同的服務(wù)。Web服務(wù)的名稱:LibraryService在MyEclipse中新建一個web project,取名為LibraryService,其結(jié)構(gòu)如下圖:圖5.1 服務(wù)器端代碼結(jié)構(gòu)5.2 連接數(shù)據(jù)庫模塊com.briup.jdbc是CVM模式中的低層,數(shù)據(jù)庫層,包中的類是用來連接數(shù)據(jù)庫和操作數(shù)據(jù)庫的,其中JDBCConnectionFactory.java用來連接數(shù)據(jù)庫的,連接數(shù)據(jù)庫的三個變量為
50、:private static String url;private static String userName;private static String userPwd;連接數(shù)據(jù)庫需要url,username,userPassword這三個值,而這三個值放入到j(luò)dbcinfo中,通過Properties來獲取,部分代碼如下:Properties pro = new Properties();pro.load(new FileInputStream(E:Myeclipse6.5 workspaceLibraryServicesrccombriupjdbc jdbcinfo);url=pro
51、.getProperty(“url”); userName = pro.getProperty(“userName”); userPwd = pro.getProperty(“userPwd”);new oracle.jdbc.driver.OracleDriver();Connection conn = DriverManager.getConnection(url,userName,userPwd);5.3 服務(wù)器功能模塊com.briup.dao是CVM模式中的Dao層,為service提供服務(wù),封裝對數(shù)據(jù)庫的操作的方法。com.briup.servlet包中就各個不同的Servlet類
52、,其具體情況如下:5.3.1注冊模塊提供用戶注冊servlet為RegisterServlet,重寫其doPost()和doGet()方法,該servlet是用來處理學(xué)生用戶注冊請求。注冊的參數(shù)有username、password、indentityid、year、gender、college,其url為: HYPERLINK :8088/LibraryService/servlet/registerservlet :8088/LibraryService/servlet/registerservlet部分代碼如下:PrintWriter out = response.getWriter();
53、String username = request.getParameter(username);String password = request.getParameter(password);String indentityid = request.getParameter(indentityid);String year = request.getParameter(year);String gender = request.getParameter(gender);String college = request.getParameter(college);LibraryDao dao
54、 =new LibraryDaoImpl();try User user1=(User)dao.findByUsername(username);if(user1!=null)xml=MakeXML.makeXml(該用戶名已存在了,false);elseUser user=new User();user.setUsername(username);user.setPassword(password);user.setIndentityid(indentityid);user.setYear(year);user.setGender(gender);user.setCollege(colleg
55、e);dao.save(user);xml=MakeXML.makeXml(恭喜您注冊成功了,true);5.3.2登錄模塊提供用戶登錄的servlet為LoginServlet,重寫其doPost()和doGet()方法,該servlet是用來處理學(xué)生用戶和管理員登錄的請求。登錄的參數(shù)有username、password,其url為: HYPERLINK :8088/LibraryService/servlet/loginservlet :8088/LibraryService/servlet/loginservlet部分代碼如下:PrintWriter out = response.get
56、Writer();System.out.println(welcome clientlogin);String xml=null;/獲得帳號String flag=request.getParameter(flag).trim();String username = request.getParameter(username).trim();String password=(String)request.getParameter(password).trim(); LibraryDao dao=new LibraryDaoImpl(); if(flag.equals(normal) if(us
57、ername!=null) try com.briup.pojo.User user=dao.findByUsername(username); if(user!=null) if(user.getPassword().equalsIgnoreCase(password) xml=MakeXML.makeXml(恭喜您登錄成功了,true);elsexml=MakeXML.makeXml(密碼不對,false);else xml=MakeXML.makeXml(用戶名不正確,false); catch (Exception e) / TODO Auto-generated catch bloc
58、k System.out.println(網(wǎng)絡(luò)異常); out.println();out.println(網(wǎng)絡(luò)異常); else if(flag.equals(admin) try Admin admin=dao.findByAdminname(username);if(admin!=null)if(admin.getPassword().equals(password)xml=MakeXML.makeXml(恭喜您登錄成功了,true);elsexml=MakeXML.makeXml(密碼不對,false);elsexml=MakeXML.makeXml(用戶名不存在,false); ca
59、tch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();5.3.3書籍查詢模塊提供特定書籍查詢servlet為findBookServlet,重寫其doPost()和doGet()方法,該servlet是用來處理學(xué)生用戶查詢特定書籍的請求。查詢書籍參數(shù)有bookname、bookauthor,其url為: HYPERLINK :8088/LibraryService/servlet/findbooksservlet :8088/LibraryService/servlet/findbooksservlet部分
60、代碼如下:String bookname=request.getParameter(bookname).trim();String authorname=request.getParameter(authorname).trim();String status=request.getParameter(status).trim();/status 為yes表示被借出了 為no表示沒被借出沒System.out.println(hello i am in findBooksServlet); String xml=null; List list=null;LibraryDao dao=new L
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 體育產(chǎn)業(yè)人力資源開發(fā)考核試卷
- 廚房電器企業(yè)文化建設(shè)與團(tuán)隊協(xié)作考核試卷
- 電子商務(wù)平臺客戶忠誠度培養(yǎng)策略
- 2025-2030年堅果代餐粉行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 2025-2030年堅果企業(yè)團(tuán)購業(yè)務(wù)企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 2025-2030年文藝風(fēng)格珠寶產(chǎn)品線企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 2025-2030年商用快速加熱爐行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 2025-2030年可折疊椅企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 2025-2030年手術(shù)室照明智能應(yīng)急照明系統(tǒng)行業(yè)跨境出海戰(zhàn)略研究報告
- 2025-2030年數(shù)字化溫濕度變送器行業(yè)跨境出海戰(zhàn)略研究報告
- 金融工程.鄭振龍(全套課件560P)
- 五年級小數(shù)乘法豎式計算300道(可直接打印)
- 英語演講技巧和欣賞課件
- 物流托運單模板
- CNC設(shè)備具體參數(shù)
- 濕式石灰石法煙氣脫硫的工藝流程
- 【員工關(guān)系管理研究國內(nèi)外文獻(xiàn)綜述2800字】
- 聯(lián)通光纜及傳輸網(wǎng)絡(luò)搶修應(yīng)急預(yù)案
- 《發(fā)展?jié)h語(第二版)中級綜合(Ⅰ)》第7課+課件
- 第四章《數(shù)列》復(fù)習(xí)小結(jié)示范公開課教學(xué)PPT課件【高中數(shù)學(xué)人教A版】
- GB/T 8944.1-2008紙漿成批銷售質(zhì)量的測定第1部分:漿板漿包及漿塊(急驟干燥漿)漿包
評論
0/150
提交評論