畢業(yè)設(shè)計論文 基于android平臺的圖書管理系統(tǒng)手機客戶_第1頁
已閱讀1頁,還剩66頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  人生最大的幸福,是發(fā)現(xiàn)自己愛的人正好也愛著自己。</p><p>  UNIVERSITY OF TECHNOLOGY</p><p><b>  畢業(yè)設(shè)計</b></p><p>  題 目 基于Android平臺的圖書管理系統(tǒng)手機客戶端開發(fā) </p><p>  學(xué)生姓名 xxx

2、 </p><p>  學(xué) 號 08250334 </p><p>  專業(yè)班級 通信工程 </p><p>  指導(dǎo)教師 xxx </p><p>  學(xué) 院 計算機與通信 </p><p>  答辯日期 2012年6月 </p><p&

3、gt;  基于Android平臺的圖書管理系統(tǒng)手機客戶端開發(fā)</p><p>  The development of library management system is based on the Android platform </p><p><b>  xxx0825</b></p><p><b>  摘 要</

4、b></p><p>  傳統(tǒng)WEB應(yīng)用只能在PC機上使用</p><p>  不能做到隨時隨地的使用</p><p><b>  為了解決這樣的不足</b></p><p>  基于Android平臺的圖書館管理系統(tǒng)客戶端就應(yīng)運而生</p><p>  本設(shè)計闡述了在Android平臺下圖

5、書館管理系統(tǒng)的設(shè)計與實現(xiàn)過程</p><p>  其目的是讓人們能夠在基于Google Android平臺的移動設(shè)備上享用傳統(tǒng)WEB上圖書館管理系統(tǒng)的基本功能</p><p>  本系統(tǒng)采用C/S結(jié)構(gòu)</p><p><b>  MVC軟件開發(fā)模式</b></p><p>  使用android布局技術(shù)完成UI的設(shè)計&l

6、t;/p><p>  基于Java語言開發(fā)完成</p><p>  在不同型號的設(shè)備模擬器上測試通過</p><p>  系統(tǒng)實現(xiàn)了用戶注冊、登錄、查詢圖書以及學(xué)生用戶管理和圖書管理等功能</p><p><b>  "操作簡單</b></p><p>  功能實用"這是本軟件設(shè)計

7、的核心理念</p><p>  本系統(tǒng)力求創(chuàng)造最好的用戶體驗</p><p>  關(guān)鍵詞:圖書館管理系統(tǒng);ANDROID;客戶端;數(shù)據(jù)庫設(shè)計;服務(wù)器端</p><p><b>  Abstract</b></p><p>  The WEB application can only in traditional PC u

8、se</p><p>  can't do it at any time and place to use</p><p>  in order to solve the shortage of such</p><p>  based on the Android platform of library management system client i

9、s made. This paper expounds the workbench Android library management system design and implementation process</p><p>  and its purpose is to let people can be based on the Google Android platform of mobile d

10、evices to enjoy the traditional WEB on the basic functions of the library management system. The system USES the C/S structure</p><p>  MVC software development model</p><p>  use android UI des

11、ign layout complete technology</p><p>  based on the Java language development completed</p><p>  in different types of equipment simulator test is passed. The system realizes the user register&

12、lt;/p><p><b>  login</b></p><p>  inquires the books and the students' user management and library management etc. Function. "The operation is simple</p><p>  func

13、tional practical" this is the core idea of the software design</p><p>  this system is the best tries to create user experience.</p><p>  Key words : library management system; ANDROID; cli

14、ent; database design; server </p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  ABSTRACTII</p><p><b>  第1章 前 言1</b></p>&l

15、t;p>  1.1 課題研究的目的及意義1</p><p>  1.2 課題的現(xiàn)狀1</p><p>  1.3 課題的內(nèi)容1</p><p>  第2章 軟件設(shè)計及開發(fā)工具介紹3</p><p>  2.1 總體設(shè)計3</p><p>  2.2 系統(tǒng)結(jié)構(gòu)3</p><p>

16、  2.3 開發(fā)工具介紹和關(guān)鍵技術(shù)3</p><p>  2.3.1 Eclipse的介紹3</p><p>  2.3.2 MyEclipse與Tomcat介紹6</p><p>  2.3.3 關(guān)鍵技術(shù)介紹7</p><p>  第3章 系統(tǒng)功能設(shè)計8</p><p>  3.1 前臺管理8</p

17、><p>  3.1.1 注冊8</p><p>  3.1.2 用戶登錄8</p><p>  3.1.3 圖書查詢8</p><p>  3.1.4 用戶管理9</p><p>  3.1.5 圖書管理9</p><p>  3.2 后臺管理9</p><p>

18、;  3.2.1 注冊管理9</p><p>  3.2.2 登錄管理9</p><p>  3.2.3 圖書查詢管理10</p><p>  3.2.4 用戶管理10</p><p>  3.2.5 圖書管理10</p><p>  第4章 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計11</p><p>  

19、4.1 服務(wù)器端數(shù)據(jù)庫設(shè)計11</p><p>  4.1.1 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計11</p><p>  4.1.2 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計13</p><p>  第5章 模塊開發(fā)及編碼實現(xiàn)15</p><p>  5.1 服務(wù)器端的設(shè)計---搭建JAVA WEB服務(wù)器15</p><p>  5.2 連接數(shù)

20、據(jù)庫模塊15</p><p>  5.3 服務(wù)器功能模塊16</p><p>  5.3.1 注冊模塊16</p><p>  5.3.2 登錄模塊17</p><p>  5.3.3 書籍查詢模塊18</p><p>  5.3.4 特定用戶查詢模塊19</p><p>  5.3

21、.5 查詢所有用戶模塊20</p><p>  5.3.6 添加書籍模塊21</p><p>  5.4 客戶端的設(shè)計---設(shè)計ANDROID UI界面22</p><p>  5.5 具體功能模塊23</p><p>  5.5.1 注冊界面23</p><p>  5.5.2 登錄界面26</p&

22、gt;<p>  5.5.3 學(xué)生用戶書籍查詢界面28</p><p>  5.5.4 管理員界面29</p><p>  5.5.5 管理學(xué)生用戶界面30</p><p>  5.5.6 管理圖書界面31</p><p>  5.5.7 圖書增加界面32</p><p>  第6章 系統(tǒng)測試

23、34</p><p>  6.1 用戶注冊測試34</p><p>  6.2 用戶登錄測試34</p><p>  6.3 圖書查詢測試36</p><p>  6.4 用戶管理測試36</p><p>  6.5 書籍管理測試37</p><p><b>  總 結(jié)39

24、</b></p><p><b>  參考文獻41</b></p><p>  附錄一 核心代碼42</p><p>  附錄二 外文文獻(原文)43</p><p>  附錄三 外文文獻(譯文)52</p><p><b>  致 謝60</b>&l

25、t;/p><p><b>  第1章 前 言</b></p><p>  1.1 課題研究的目的及意義</p><p>  移動互聯(lián)網(wǎng)時代的來臨</p><p>  說明一個嶄新的時代開始了</p><p>  所謂移動互聯(lián)網(wǎng)是將移動通信和互聯(lián)網(wǎng)整合在一起</p><p>  

26、移動設(shè)備(包括手機和上網(wǎng)本)可以隨時隨地地訪問互聯(lián)網(wǎng)資源和應(yīng)用</p><p>  智能手機是移動互聯(lián)網(wǎng)時代一個標志性的客戶端工具</p><p>  它和傳統(tǒng)的手機是有區(qū)別的</p><p>  它就像一臺"小電腦"</p><p><b>  具有獨立的操作系統(tǒng)</b></p>&l

27、t;p>  可以自由安裝、卸載軟件</p><p>  具有強大的計算和存儲能力</p><p>  可以通過移動通信網(wǎng)絡(luò)來實現(xiàn)無線網(wǎng)絡(luò)接入</p><p>  對于移動終端設(shè)備飛速發(fā)展的今天</p><p>  傳統(tǒng)WEB上的應(yīng)用出現(xiàn)在手機終端是一個大的趨勢</p><p>  而基于Android開發(fā)的圖書館

28、管理系統(tǒng)手機客戶端</p><p>  正是對這一趨勢的良好體現(xiàn)</p><p>  Android平臺下的圖書館管理系統(tǒng)的開發(fā)</p><p>  能很好的為用戶提供方便</p><p>  用戶能通過它能隨時隨地的了解系統(tǒng)的實時信息</p><p><b>  做到信息的實時化</b><

29、/p><p>  通過Android平臺下的圖書館管理系統(tǒng)客戶端的開發(fā)</p><p>  與傳統(tǒng)WEB應(yīng)用進行良好的互補</p><p><b>  同時</b></p><p>  對于校內(nèi)的圖書館管理系統(tǒng)來說</p><p>  手機對于學(xué)生是必不可少的一個物品</p><p

30、>  手機客戶端這種形式的圖書館管理系統(tǒng)</p><p>  能更加貼近學(xué)生的生活習(xí)慣</p><p>  并且適合學(xué)生年齡段的習(xí)性</p><p>  這對學(xué)生更多的接觸到圖書館的信息有一定得促進作用</p><p><b>  1.2 課題的現(xiàn)狀</b></p><p>  目前國內(nèi)的基

31、于Android平臺的圖書館管理系統(tǒng)客戶端還不成熟</p><p>  大多數(shù)的圖書館管理系統(tǒng)都出現(xiàn)在傳統(tǒng)的WEB應(yīng)用上</p><p><b>  在這個環(huán)境下</b></p><p>  基于Android平臺的圖書館管理系統(tǒng)客戶端屬于一個嶄新的應(yīng)用</p><p>  作為一個不太成熟的應(yīng)用</p>

32、<p>  大多數(shù)圖書館管理系統(tǒng)都是出現(xiàn)在學(xué)習(xí)android開發(fā)的一個項目中</p><p>  作為學(xué)習(xí)中的一個練習(xí)項目</p><p><b>  目前</b></p><p>  絕大部分的網(wǎng)絡(luò)應(yīng)用都還是傳統(tǒng)的WEB應(yīng)用</p><p>  但面對Android手機如此迅速發(fā)展的今天</p>

33、<p>  傳統(tǒng)WEB的應(yīng)用不能滿足人們隨時隨地體驗網(wǎng)絡(luò)應(yīng)用的想法</p><p><b>  所以</b></p><p>  出現(xiàn)在手機終端的應(yīng)用將會越來越多</p><p>  同時其發(fā)展的速度也會越來越快</p><p>  校內(nèi)圖書館管理系統(tǒng)作為傳統(tǒng)WEB應(yīng)用</p><p>

34、;  也必將在手機客戶端上得到應(yīng)用</p><p><b>  1.3 課題的內(nèi)容</b></p><p>  由此出現(xiàn)大量的應(yīng)用出現(xiàn)在手機上</p><p>  基于Android平臺的圖書館管理系統(tǒng)手機客戶端是依據(jù)現(xiàn)在的形式所開發(fā)的</p><p>  它是一套基于開放性的圖書館管理系統(tǒng)</p><

35、;p>  它有傳統(tǒng)WEB上圖書館管理系統(tǒng)的大部分功能</p><p>  整個系統(tǒng)分為前臺界面管理和后臺服務(wù)器管理兩部分</p><p>  劃分為用戶管理、圖書管理、信息管理等三個部分</p><p><b>  在前臺管理中</b></p><p>  用戶進行注冊、登錄、查詢特定圖書等功能;后臺管理模塊<

36、;/p><p>  負責(zé)控制前臺界面管理的所有功能;本系統(tǒng)設(shè)置了學(xué)生用戶和管理員兩類</p><p>  兩類用戶都是使用同一個平臺</p><p><b>  只是權(quán)限不同</b></p><p>  學(xué)生用戶只能注冊、查詢圖書等功能;管理員擁有最高權(quán)限</p><p>  可以對已經(jīng)畢業(yè)的學(xué)生用戶

37、賬號進行刪除</p><p><b>  查詢學(xué)生用戶信息</b></p><p>  實時更新圖書館的新書</p><p>  發(fā)布圖書館最新信息等權(quán)限</p><p><b>  本圖書館管理系統(tǒng)</b></p><p>  能夠適用于各類圖書館</p>&

38、lt;p><b>  具有良好的可操作性</b></p><p>  可以隨時的查詢你所需要的圖書信息</p><p>  只要你的智能手機安裝了本系統(tǒng)客戶端</p><p>  系統(tǒng)大大的方便了學(xué)生的圖書查詢的</p><p>  本系統(tǒng)采用C/S結(jié)構(gòu)</p><p>  后臺服務(wù)器使用S

39、ervlet編寫服務(wù)器</p><p>  同時用Tomcat發(fā)布服務(wù)</p><p>  前臺客戶端環(huán)境使用的是ANDROID控件</p><p>  通過JDBC來調(diào)用Oracle數(shù)據(jù)庫</p><p>  來實現(xiàn)手機客戶端與服務(wù)器之間數(shù)據(jù)傳輸</p><p>  第2章 軟件設(shè)計及開發(fā)工具介紹</p>

40、<p>  為了使軟件開發(fā)能夠順利進行</p><p>  使開發(fā)人員對系統(tǒng)各個模塊的性能、系統(tǒng)接口、系統(tǒng)開發(fā)及運行環(huán)境和計算機內(nèi)部處理的邏輯及物理流程有更清晰的認識</p><p><b>  更利于源程序的開發(fā)</b></p><p>  現(xiàn)對系統(tǒng)的總體設(shè)計和系統(tǒng)結(jié)構(gòu)設(shè)計及開發(fā)工具和關(guān)鍵技術(shù)做詳細說明</p>&

41、lt;p><b>  2.1 總體設(shè)計</b></p><p>  基于ANDROID平臺開發(fā)的圖書館管理系統(tǒng)客戶端從設(shè)計者的角度來看</p><p>  用戶角色分為學(xué)生用戶和管理員兩類;功能包括注冊、登錄、密碼找回、書籍查詢、圖書實時更新、普通用戶管理共六大部分</p><p>  其中系統(tǒng)管理中的學(xué)生用戶權(quán)限包括注冊、登錄、密碼找回

42、、書籍查詢等四個模塊;管理員的權(quán)限則是除了學(xué)生用戶具有的權(quán)限外還有實時更新圖書信息、學(xué)生用戶管理等模塊</p><p>  從使用者的角度來看分為前臺和后臺管理兩大部分</p><p>  后臺管理模塊是本系統(tǒng)的關(guān)鍵部分之一</p><p>  它是系統(tǒng)維護和信息管理平臺</p><p><b>  根據(jù)現(xiàn)實需要</b>

43、</p><p>  本系統(tǒng)后臺管理用戶有兩類:管理員和學(xué)生用戶</p><p>  這兩類用戶使用的系統(tǒng)管理平臺都是同一個平臺上</p><p>  只不過他們執(zhí)行的權(quán)限不同</p><p><b>  2.2 系統(tǒng)結(jié)構(gòu)</b></p><p>  本系統(tǒng)總體邏輯結(jié)構(gòu)為C/S結(jié)構(gòu)</p&g

44、t;<p>  結(jié)構(gòu)圖如圖2-1所示:</p><p>  圖2.1 C/S結(jié)構(gòu)圖</p><p>  2.3 開發(fā)工具介紹和關(guān)鍵技術(shù)</p><p>  2.3.1 Eclipse的介紹</p><p>  Eclipse 是一個開放源代碼的、基于 Java 的可擴展開發(fā)平臺</p><p><b

45、>  就其本身而言</b></p><p>  它只是一個框架和一組服務(wù)</p><p>  用于通過插件組件構(gòu)建開發(fā)環(huán)境</p><p><b>  幸運的是</b></p><p>  Eclipse 附帶了一個標準的插件集</p><p>  包括 Java 開發(fā)工具(Ja

46、va Development Kit</p><p><b>  JDK)</b></p><p>  Eclipse的發(fā)展史</p><p>  版本代號 平臺版本 主要版本發(fā)行日期 SR1發(fā)行日期 SR2發(fā)行日期</p><p><b>  如下:</b></p><p>

47、;  表2-1 Eclipse的版本號</p><p>  版本代號平臺版本主要版本發(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

48、日2006年9月25日2010年2月26日Helios3.62006年6月23日2006年9月24日2011年2月25日Indigo3.72006年6月22日2006年9月23日2012年2月24日Juno(預(yù)定)3.8及4.22006年6月27日2006年9月28日2013年2月22日Kepler4.32006年6月26日2006年9月27日2014年2月28日  Eclipse是一個開放

49、源代碼的軟件開發(fā)項目</p><p>  專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺</p><p>  它主要由Eclipse項目、Eclipse工具項目和Eclipse技術(shù)項目三個項目組成</p><p>  具體包括四個部分組成--Eclipse Platform、JDT、CDT和PDE</p><p>  JD

50、T支持Java開發(fā)、CDT支持C開發(fā)、PDE用來支持插件開發(fā)</p><p>  Eclipse Platform則是一個開放的可擴展IDE</p><p>  提供了一個通用的開發(fā)平臺</p><p>  它提供建造塊和構(gòu)造并運行集成軟件開發(fā)工具的基礎(chǔ)</p><p>  Eclipse Platform允許工具建造者獨立開發(fā)與他人工具無縫

51、集成的工具從而無須分辨一個工具功能在哪里結(jié)束</p><p>  而另一個工具功能在哪里開始</p><p>  Android工程是在Eclipse工具上編寫的</p><p>  進行android工程的編寫</p><p>  首先需要在Eclipse上安裝ADT插件</p><p>  然后指定SDK所在的路徑

52、</p><p>  便可以創(chuàng)建android虛擬機了</p><p>  在Eclipse下創(chuàng)建虛擬機的步驟如下:</p><p> ?。?) 安裝ADT插件</p><p>  在Eclipse單擊菜單欄的Help</p><p>  在Help里面選中Install NewSoftware選項</p>

53、<p>  之后便可以出現(xiàn)如下界面:</p><p>  圖2.2 ADT安裝步驟界面</p><p>  指定好你的ADT路徑后</p><p>  便可以安裝好ADT插件</p><p> ?。?) 導(dǎo)入AndroidSDK</p><p><b>  安裝好ADT插件后</b>

54、</p><p>  單擊Eclipse菜單欄Windows下找到preperence</p><p><b>  點擊進入</b></p><p><b>  得到如下界面:</b></p><p>  圖2.3 AndroidSDK安裝界面</p><p>  在左邊選項

55、選中Android</p><p>  在SDK Location下導(dǎo)入AndroidSDK路徑</p><p><b>  點擊Apply應(yīng)用</b></p><p>  便會導(dǎo)入Android的各個版本</p><p><b> ?。?) 創(chuàng)建虛擬機</b></p><p&g

56、t;  安裝好ADT和導(dǎo)入AndroidSDK成功后</p><p>  便可以在菜單欄Windows下找到AVD manage選項</p><p>  單擊進入后便有新建android虛擬機界面</p><p>  在創(chuàng)建界面設(shè)置好虛擬機參數(shù)點擊確定后</p><p>  就創(chuàng)建好了一個android虛擬機</p><p

57、><b>  創(chuàng)建好虛擬機后</b></p><p>  點擊開始便可以運行一個android虛擬機</p><p>  虛擬機運行成功界面如下:</p><p>  圖2.4 android虛擬機視圖</p><p>  虛擬機模擬的是android智能手機的界面</p><p>  通過

58、操作虛擬機可以體驗到android智能手機的部分應(yīng)用</p><p>  同時虛擬機是作為開發(fā)的android應(yīng)用運行的場所</p><p>  他提供基本的人機交互功能</p><p>  2.3.2 MyEclipse與Tomcat介紹</p><p>  MyEclipse是一個十分優(yōu)秀的用于開發(fā)Java</p><

59、p>  J2EE的Eclipse插件集合</p><p>  MyEclipse企業(yè)級工作平臺(MyEclipse Enterprise Workbench </p><p>  簡稱MyEclipse)是對EclipseIDE的擴展</p><p>  利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率</p

60、><p>  它是功能豐富的JavaEE集成開發(fā)環(huán)境</p><p>  包括了完備的編碼、調(diào)試、測試和發(fā)布功能</p><p><b>  支持HTML</b></p><p><b>  Struts</b></p><p><b>  JSP</b>&

61、lt;/p><p>  Javascript</p><p><b>  Hibernate</b></p><p><b>  MyEclipse</b></p><p><b>  CSS</b></p><p><b>  Spring<

62、;/b></p><p>  SQL的功能非常強大</p><p><b>  支持也十分廣泛</b></p><p>  尤其是對各種開源產(chǎn)品的支持十分不錯</p><p><b>  在結(jié)構(gòu)上</b></p><p>  MyEclipse的特征可以被分為7類:&l

63、t;/p><p>  1. JavaEE模型</p><p>  2. WEB開發(fā)工具</p><p>  3. EJB開發(fā)工具</p><p>  4. 應(yīng)用程序服務(wù)器的連接器</p><p>  5. JavaEE項目部署服務(wù)</p><p><b>  6. 數(shù)據(jù)庫服務(wù)</b&

64、gt;</p><p>  7. MyEclipse整合幫助</p><p>  對于以上每一種功能上的類別</p><p>  在Eclipse中都有相應(yīng)的功能部件</p><p>  并通過一系列的插件來實現(xiàn)它們</p><p>  MyEclipse結(jié)構(gòu)上的這種模塊化</p><p>  

65、可以讓我們在不影響其他模塊的情況下</p><p>  對任一模塊進行單獨的擴展和升級</p><p><b>  簡單而言</b></p><p>  MyEclipse是Eclipse的插件</p><p>  也是一款功能強大的JavaEE集成開發(fā)環(huán)境</p><p>  支持代碼編寫、配置

66、、測試以及除錯</p><p>  MyEclipse6.0以前版本需先安裝Eclipse</p><p>  MyEclipse6.0以后版本安裝時不需安裝Eclipse</p><p>  本系統(tǒng)是基于C/S架構(gòu)的</p><p>  所以需要在MyEclipse上創(chuàng)建服務(wù)器端</p><p>  利用Java E

67、E中的servlet來提供服務(wù)</p><p>  并將其部署在Tomcat下</p><p>  需要解決的是創(chuàng)建不同的servlet來提供不同的服務(wù)</p><p>  Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目</p><p>  由Apache、

68、Sun 和其他一些公司及個人共同開發(fā)而成</p><p>  由于有了Sun 的參與和支持</p><p>  最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn)</p><p>  Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范</p><p>  因為Tomcat 技術(shù)先進、性能穩(wěn)定</

69、p><p><b>  而且免費</b></p><p>  因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認可</p><p>  成為目前比較流行的Web 應(yīng)用服務(wù)器</p><p>  目前最新版本是7.0</p><p>  Tomcat 很受廣大程序員的喜歡</p>&

70、lt;p>  因為它運行時占用的系統(tǒng)資源小</p><p><b>  擴展性好</b></p><p>  支持負載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中</p><p>  任何一個感興趣的程序員都可以更改它或在其中加入新的功能</p><p>  Tomcat 是一個輕量級應(yīng)用服

71、務(wù)器</p><p>  在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用</p><p>  是開發(fā)和調(diào)試JSP 程序的首選</p><p><b>  對于一個初學(xué)者來說</b></p><p><b>  可以這樣認為</b></p><p>  當在一臺機器上配置

72、好Apache 服務(wù)器</p><p>  可利用它響應(yīng)對HTML 頁面的訪問請求</p><p>  實際上Tomcat 部分是Apache 服務(wù)器的擴展</p><p><b>  但它是獨立運行的</b></p><p>  所以當你 Apache Tomcat運行tomcat 時</p><

73、p>  它實際上作為一個與Apache 獨立的進程單獨運行的</p><p>  而Tomcat 實際上運行JSP 頁面和Servlet</p><p><b>  另外</b></p><p>  Tomcat和IIS、Apache等Web服務(wù)器一樣</p><p>  具有處理HTML頁面的功能</p&g

74、t;<p>  另外它還是一個Servlet和JSP容器</p><p>  獨立的Servlet容器是Tomcat的默認模式</p><p><b>  不過</b></p><p>  Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器</p><p>  目前Tomcat最新版本為7.0.27

75、Released</p><p>  2.3.3 關(guān)鍵技術(shù)介紹</p><p>  本軟件采用java作為開發(fā)語言</p><p>  布局和數(shù)據(jù)存儲是開發(fā)本軟件的關(guān)鍵技術(shù)</p><p>  布局用來設(shè)計用戶交互界面</p><p>  用戶界面的設(shè)計是否美觀和合理直接影響用戶體驗</p><p&

76、gt;  因此運用好布局技術(shù)是直接和用戶相關(guān)的</p><p>  而數(shù)據(jù)存儲技術(shù)則記錄了用戶所有的操作數(shù)據(jù)和用戶所需要提取的數(shù)據(jù)</p><p><b>  在android中</b></p><p>  軟件UI通常使用xml技術(shù)設(shè)計</p><p>  而xml中控件的位置和狀態(tài)則離不開布局的使用</p>

77、;<p>  android中常用的布局有5種</p><p>  分別是:AbsoluteLayout、LinearLayout、RelativeLayout、FrameLayout、TableLayout</p><p><b>  由于布局的使用</b></p><p>  并且布局之間可以互相嵌套</p>&

78、lt;p>  使得android軟件UI的設(shè)計變得非常靈活</p><p>  即使是一些非常復(fù)雜的界面設(shè)計</p><p><b>  只要合理的使用布局</b></p><p>  也會使開發(fā)變得很容易</p><p>  Android中數(shù)據(jù)存儲技術(shù)主要有:文件存儲、preference、sqlite、Con

79、tentProvider和網(wǎng)絡(luò)存儲</p><p>  文件存儲是以流的形式讀寫文件</p><p><b>  可以以文格的格式</b></p><p>  也可以以二進制的形式</p><p>  在java語言中要使用流</p><p>  則寫入文件的對象必須進行序列化</p>

80、<p>  sqlite是嵌入式移動設(shè)備中常用的輕量級數(shù)據(jù)庫</p><p>  可看作計算機上使用的sql server、oracle數(shù)據(jù)庫</p><p><b>  本系統(tǒng)中</b></p><p>  采用的是Oracle數(shù)據(jù)庫進行儲存圖書館里的基本信息</p><p>  第3章 系統(tǒng)功能設(shè)計&l

81、t;/p><p>  本系統(tǒng)采用C/S模式開發(fā)的</p><p>  該系統(tǒng)的客戶端和服務(wù)器端是獨立分開的</p><p>  這樣的分開也就形成了前臺管理和后臺管理</p><p>  前臺管理注重用戶的交互是否簡便</p><p>  后臺管理注重功能的邏輯和與數(shù)據(jù)庫數(shù)據(jù)交互的功能</p><p&g

82、t;<b>  3.1 前臺管理</b></p><p>  前臺客戶端的所有功能畫出的功能流程圖如下:</p><p>  圖3.1 前臺客戶端流程圖</p><p><b>  3.1.1 注冊</b></p><p>  用戶通過手機客戶端主界面上的注冊按鈕注冊新的學(xué)生用戶</p>

83、<p>  注冊用戶的信息通過服務(wù)器端和數(shù)據(jù)庫連接</p><p>  數(shù)據(jù)庫中的用戶表則會生成你注冊的信息</p><p>  同時在手機客戶端提示注冊成功</p><p>  3.1.2 用戶登錄</p><p>  用戶登錄分為兩類用戶:管理員和學(xué)生用戶</p><p>  可以通過登錄界面中選定身

84、份登錄</p><p>  服務(wù)器根據(jù)登錄選定的信息選擇數(shù)據(jù)庫中的數(shù)據(jù)表進行匹配</p><p>  用戶名和密碼正確則登錄成功</p><p>  3.1.3 圖書查詢</p><p>  在查詢界面輸入所需查詢書籍的書名和作者名</p><p>  通過服務(wù)器端查詢數(shù)據(jù)庫返回你所查詢的書籍信息</p>

85、<p>  書籍信息包括:書名、作者、出版社名、是否被接、剩余本數(shù)等信息</p><p><b>  在圖書查詢功能中</b></p><p>  運用到了ANDROID的一個自動完成文本的控件</p><p>  該控件可以通過你輸入的查詢信息列出帶有你輸入字的書名</p><p><b>  以

86、方便你的檢索</b></p><p><b>  通過此控件</b></p><p>  大大的提高了用戶檢索書籍的效率</p><p>  同時滿足了模糊查詢的功能</p><p>  是用戶查詢書籍方便、快捷</p><p>  3.1.4 用戶管理</p><

87、p>  用戶管理模塊是管理員對學(xué)生用戶賬號的管理</p><p>  對于某些特殊原因賬號不使用了</p><p>  比如:學(xué)生畢業(yè)等原因不再使用賬號的問題</p><p>  管理員有權(quán)利對這類賬號進行刪除</p><p>  同時可以學(xué)生用戶的用戶名查詢學(xué)生用戶的信息</p><p>  3.1.5 圖書管

88、理</p><p>  這個功能也只有管理員身份才能擁有</p><p><b>  管理員通過此功能</b></p><p>  可以對圖書進行增加、刪出功能</p><p><b>  通過這個模塊</b></p><p>  管理員可以對新進的圖書進行添加處理</

89、p><p>  并能實時發(fā)布新增書籍</p><p><b>  對于刪除功能</b></p><p>  管理員可以把一些已經(jīng)下架</p><p>  不再外借的書籍進行刪除</p><p>  以便造成不必要的麻煩</p><p><b>  3.2 后臺管理&l

90、t;/b></p><p>  后臺服務(wù)器端的任務(wù)是根據(jù)客戶端送發(fā)送過來的請求</p><p>  根據(jù)客戶端不同功能模塊</p><p>  通過檢索數(shù)據(jù)庫不同表格</p><p>  把檢索結(jié)果返回給客戶端顯示給以用戶</p><p><b>  其基本流程圖如下:</b></p&

91、gt;<p>  圖3.2 后臺服務(wù)器端流程圖</p><p>  3.2.1 注冊管理</p><p>  注冊用戶提交:向服務(wù)器提交用戶注冊的信息</p><p><b>  同時更新到數(shù)據(jù)庫</b></p><p>  注冊管理是后臺的一個重要內(nèi)容</p><p>  注冊只提

92、供學(xué)生用戶的注冊</p><p>  這樣可以保證圖書館用戶權(quán)限的穩(wěn)定和安全</p><p><b>  通過注冊用戶</b></p><p>  用戶才能享受來自手機客戶端的所有功能</p><p>  通過手機客戶端注冊用戶</p><p>  來作為以后通過手機客戶端登錄圖書館管理系統(tǒng)的唯一

93、身份認證</p><p>  3.2.2 登錄管理</p><p>  登錄管理:根據(jù)你登錄的信息向服務(wù)器發(fā)送請求</p><p>  然后和數(shù)據(jù)庫信息進行對比</p><p>  來確認用戶登錄的成功與否</p><p><b>  登錄時候</b></p><p>  

94、首先你必須選定你的登錄身份</p><p>  是以學(xué)生用戶還是管理員身份登錄</p><p>  根據(jù)你選擇的不同身份</p><p>  服務(wù)器向不同的數(shù)據(jù)庫表來核對信息</p><p>  以通過對用戶信息的核對</p><p>  以確定所登錄的賬號密碼是否正確</p><p>  3.

95、2.3 圖書查詢管理</p><p>  圖書查詢管理主要通過圖書的幾個關(guān)鍵信息進行查詢</p><p>  根據(jù)圖書名字和圖書作者向數(shù)據(jù)庫提交信息進行條件檢索</p><p><b>  通過輸入信息的檢索</b></p><p>  返回檢索書籍的基本信息</p><p>  比如:圖書名字、

96、圖書作者、出版社名、是否被借、剩余數(shù)量等基本信息</p><p>  3.2.4 用戶管理</p><p><b>  后臺的用戶管理</b></p><p>  是處理管理員對有特殊情況的學(xué)生用戶和查詢特定學(xué)生用戶的服務(wù)</p><p>  是與數(shù)據(jù)庫進行數(shù)據(jù)更新與交互的服務(wù)</p><p> 

97、 3.2.5 圖書管理</p><p><b>  后臺的圖書管理</b></p><p>  是處理管理員把新書添加到書籍數(shù)據(jù)庫表的服務(wù)</p><p><b>  通過添加到數(shù)據(jù)庫表</b></p><p>  學(xué)生用戶才能在書籍查詢功能中查詢到新更新的書籍信息</p><p

98、><b>  同時</b></p><p>  對于不再外借的書籍從數(shù)據(jù)庫刪除</p><p>  以此來更新數(shù)據(jù)庫中的書籍名稱</p><p>  第4章 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計</p><p>  4.1 服務(wù)器端數(shù)據(jù)庫設(shè)計</p><p>  采用的是Oracle數(shù)據(jù)庫</p>

99、<p>  在本系統(tǒng)中采用了簡易版的Oracle</p><p>  即數(shù)據(jù)庫的名字為Oracle XE</p><p>  首先要解決的是在該數(shù)據(jù)庫里某個用戶下創(chuàng)建表</p><p>  首先配置Oracle數(shù)據(jù)庫</p><p><b>  步驟如下: </b></p><p>  

100、(1) 以O(shè)racle管理員身份進入Oracle</p><p>  在終端輸入的命令為:sqlplus "/as sysdba";</p><p>  (2) 啟動Oracle</p><p>  在終端輸入的命令為:startup;</p><p>  (3) 創(chuàng)建新的用戶</p><p>  

101、在終端的命令為:先以管理員身份登錄數(shù)據(jù)庫</p><p>  然后創(chuàng)建新的用戶的命令為:</p><p>  create user liuyujuan identified by liuyujuan;</p><p>  grant resource</p><p>  connect to liuyujuan;</p>&l

102、t;p>  所創(chuàng)建的用戶賬號和密碼分別為:liuyujuan</p><p>  liuyujuan;</p><p>  (4)然后以liuyujuan用戶登錄</p><p>  命令為:sqlplus liuyujuan/liuyujuan</p><p>  在賬戶liuyujuan下創(chuàng)建數(shù)據(jù)表</p><p

103、>  以滿足圖書館管理的日常需要</p><p>  表格名稱分別為: lib_admin</p><p><b>  lib_user</b></p><p><b>  lib_books</b></p><p><b>  lib_ret</b></p>

104、<p>  各個數(shù)據(jù)表的儲存的信息分別為:管理員信息、普通用戶信息、書籍信息、書籍外借信息表</p><p>  4.1.1 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計</p><p>  在需求分析階段已完成該系統(tǒng)所有的數(shù)據(jù)分析</p><p>  根據(jù)該階段所建立的概念模型</p><p>  已經(jīng)得出滿足系統(tǒng)設(shè)計要求的幾個關(guān)系描述</p&g

105、t;<p>  該階段的主要工作就是把前一階段的成果轉(zhuǎn)化為具體的數(shù)據(jù)庫</p><p>  管理員用戶有用戶名和密碼兩個屬性</p><p>  通過這兩個屬性來確定管理員用戶的身份是否合法</p><p><b>  其中ID為主鍵</b></p><p><b>  其E-R圖如下:</

106、b></p><p>  圖4.1 管理員E-R圖</p><p>  學(xué)生用戶有用戶名、密碼身份證號、入學(xué)年份、性別、所在學(xué)院名稱等屬性</p><p><b>  通過這些屬性</b></p><p>  來確認學(xué)生信息表的信息</p><p><b>  其中主鍵為ID<

107、;/b></p><p><b>  其E-R圖如下:</b></p><p>  圖4.2 學(xué)生用戶E-R圖</p><p><b>  書籍信息表</b></p><p>  是用來存儲書籍的基本信息</p><p>  其數(shù)星星包括書名、作者名、書籍位置、出版社名

108、稱、所屬科目、是否借出、最大借閱時間等</p><p>  其中自動分配的ID和書名作為聯(lián)合主鍵</p><p><b>  其E-R圖如下:</b></p><p>  圖4.3 書籍信息E-R圖</p><p>  外借書籍信息表是用來存儲外借書籍的有關(guān)信息</p><p><b>

109、  通過此表格</b></p><p>  來獲取該外借書籍的基本狀態(tài)</p><p>  其屬性有書籍編號、書籍名、書籍作者、最大外借時間、實際外借時間、外借時間、借閱者ID</p><p><b>  其E-R圖如下:</b></p><p>  圖4.4書籍外借信息E-R圖</p><

110、;p>  對于各個實體之間的關(guān)系E-R圖如下:</p><p>  圖 4.5 實體關(guān)系圖</p><p>  4.1.2 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計</p><p><b>  依據(jù)數(shù)據(jù)庫的原理</b></p><p><b>  并結(jié)合以上E-R圖</b></p><p>

111、<b>  經(jīng)過轉(zhuǎn)化</b></p><p>  即可進行數(shù)據(jù)庫的物理設(shè)計</p><p>  基于以上數(shù)據(jù)庫的邏輯設(shè)計</p><p>  考慮程序設(shè)計的簡易性</p><p><b>  同時考慮題目的時間</b></p><p>  該系統(tǒng)的數(shù)據(jù)庫采用Oracle簡易版

112、本建立一個數(shù)據(jù)庫</p><p>  在其下創(chuàng)建4個數(shù)據(jù)表</p><p>  其結(jié)構(gòu)分別如下各表:</p><p>  表4-1 數(shù)據(jù)表清單</p><p>  表名說明管理員用戶表用于存儲管理員信息表格普通用戶表用于存儲普通用戶信息表格書籍信息表用于存儲書籍基本信息表格書籍外借信息表用于儲存外借書籍的基本信息</

113、p><p>  表4-2 管理員用戶信息表</p><p>  字段名數(shù)據(jù)類型長度主鍵備注ID自動編號10是由數(shù)據(jù)庫sequence自動生成AdminnameVarchar250否管理員的登錄賬號PasswordVarchar250否管理員登錄的密碼</p><p>  表4-3 普通用戶信息表</p><p&

114、gt;  字段名數(shù)據(jù)類型長度主鍵備注ID自動編號10是由數(shù)據(jù)庫sequence自動生成UsernameVarchar250否唯一標識用戶</p><p>  不可缺PasswordVarchar250否普通用戶用戶登錄密碼IndentityidVarchar2100否用戶注冊的身份證號YearVarchar250否用戶入學(xué)年份GenderVarchar

115、230否用戶性別CollegeVarchar250否用戶所在學(xué)院表4-4 書籍信息表</p><p>  字段名數(shù)據(jù)類型長度主鍵備注ID自動編號10聯(lián)合主鍵由數(shù)據(jù)庫sequence自動生成BooknameVarchar250聯(lián)合主鍵書籍名稱BookauthorVarchar250否書籍作者名PhnameVarchar250否出版社名稱Locati

116、onVarchar260否所在位置CategoryVarchar280否所屬科目StatusVarchar220否書籍狀態(tài)RenttimeVarchar220否最大借閱時間</p><p>  表4-5 外借書籍信息表</p><p>  字段名數(shù)據(jù)類型長度主鍵備注IDVarchar210是由數(shù)據(jù)庫自動生成Book_dateVa

117、rchar250否外借時間Act_ret_dateVarchar250否實際的外借時間Exp_ret_dateVarchar250否最大的外借時間Book_idVarchar210否書籍編號BooknameVarchar250否書籍名字AuthornameVarchar250否書籍作者名User_idVarchar210否借閱者id</p><p&g

118、t;  第5章 模塊開發(fā)及編碼實現(xiàn)</p><p>  5.1 服務(wù)器端的設(shè)計---搭建java web服務(wù)器</p><p>  本軟件是C/S結(jié)構(gòu)的系統(tǒng)</p><p>  因此要先搭建服務(wù)器端</p><p>  利用Java EE中的servlet來提供服務(wù)</p><p>  并將其部署在Tomcat下<

119、;/p><p>  需要解決的是創(chuàng)建不同的servlet來提供不同的服務(wù)</p><p>  Web服務(wù)的名稱:LibraryService</p><p>  在MyEclipse中新建一個web project</p><p>  取名為LibraryService</p><p><b>  其結(jié)構(gòu)如下圖:

120、</b></p><p>  圖5.1 服務(wù)器端代碼結(jié)構(gòu)</p><p>  5.2 連接數(shù)據(jù)庫模塊</p><p>  com.briup.jdbc是CVM模式中的低層</p><p><b>  數(shù)據(jù)庫層</b></p><p>  包中的類是用來連接數(shù)據(jù)庫和操作數(shù)據(jù)庫的</

121、p><p>  其中JDBCConnectionFactory.java用來連接數(shù)據(jù)庫的</p><p>  連接數(shù)據(jù)庫的三個變量為:</p><p>  private static String url;</p><p>  private static String userName;</p><p>  priva

122、te static String userPwd;</p><p>  連接數(shù)據(jù)庫需要url</p><p><b>  username</b></p><p>  userPassword這三個值</p><p>  而這三個值放入到j(luò)dbcinfo中</p><p>  通過Properti

123、es來獲取</p><p><b>  部分代碼如下:</b></p><p>  Properties pro = new Properties();</p><p>  pro.load(new FileInputStream("E:\Myeclipse6.5 workspace\</p><p>  Li

124、braryService\src\com\briup\jdbc\ jdbcinfo"));</p><p>  url=pro.getProperty("url");</p><p>  userName = pro.getProperty("userName");</p><p>  userPwd = pro.g

125、etProperty("userPwd");</p><p>  new oracle.jdbc.driver.OracleDriver();</p><p>  Connection conn = DriverManager.getConnection(url</p><p><b>  userName</b></

126、p><p><b>  userPwd);</b></p><p>  5.3 服務(wù)器功能模塊</p><p>  com.briup.dao是CVM模式中的Dao層</p><p>  為service提供服務(wù)</p><p>  封裝對數(shù)據(jù)庫的操作的方法</p><p> 

127、 com.briup.servlet包中就各個不同的Servlet類</p><p><b>  其具體情況如下:</b></p><p>  5.3.1 注冊模塊</p><p>  提供用戶注冊servlet為RegisterServlet</p><p>  重寫其doPost()和doGet()方法</p&

128、gt;<p>  該servlet是用來處理學(xué)生用戶注冊請求</p><p>  注冊的參數(shù)有username、password、indentityid、year、gender、college</p><p><b>  其url為:</b></p><p>  http://192.168.19.1:8088/LibrarySe

129、rvice/servlet/registerservlet</p><p><b>  部分代碼如下:</b></p><p>  PrintWriter out = response.getWriter();</p><p>  String username = request.getParameter("username&quo

130、t;);</p><p>  String password = request.getParameter("password");</p><p>  String indentityid = request.getParameter("indentityid");</p><p>  String year = reque

131、st.getParameter("year");</p><p>  String gender = request.getParameter("gender");</p><p>  String college = request.getParameter("college");</p><p>  L

132、ibraryDao dao =new LibraryDaoImpl();</p><p>  try {User user1=(User)dao.findByUsername(username);</p><p>  if(user1!=null)</p><p>  {xml=MakeXML.makeXml("該用戶名已存在了"</p&g

133、t;<p><b>  false);</b></p><p><b>  }else{</b></p><p>  User user=new User();</p><p>  user.setUsername(username);</p><p>  user.setPasswo

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論