2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  畢業(yè)論文(設(shè)計(jì))</b></p><p>  題目名稱: 基于Android系統(tǒng)的股票預(yù)測游戲 </p><p>  題目類型: 畢 業(yè) 論 文 </p><p>  學(xué)生姓名:

2、 </p><p>  院 (系): 電 子 信 息 學(xué) 院 </p><p>  專業(yè)班級: </p><p>  指導(dǎo)教師: </p>&l

3、t;p>  輔導(dǎo)教師: </p><p>  時 間: 2013年12月20日 至 2014年6月10日 </p><p><b>  目 錄</b></p><p>  畢業(yè)設(shè)計(jì)(論文)任務(wù)書IV</p><p>  畢業(yè)

4、設(shè)計(jì)開題報(bào)告VI</p><p>  **畢業(yè)論文(設(shè)計(jì))指導(dǎo)教師評審意見XII</p><p>  **畢業(yè)論文(設(shè)計(jì))評閱教師評語XIV</p><p>  **畢業(yè)論文(設(shè)計(jì))答辯記錄及成績評定XV</p><p><b>  前 言XVI</b></p><p><b>

5、;  1緒論1</b></p><p><b>  1.2選題背景1</b></p><p>  1.2選題目的與意義1</p><p><b>  2.需求分析2</b></p><p>  2.1可行性分析2</p><p>  2.2功能需求分析

6、3</p><p>  2.3實(shí)施方案的選定3</p><p>  2.4游戲流程圖6</p><p><b>  3游戲設(shè)計(jì)8</b></p><p>  3.1游戲功能結(jié)構(gòu)圖8</p><p>  3.2游戲設(shè)計(jì)目標(biāo)8</p><p><b>  3

7、.3功能設(shè)計(jì)9</b></p><p>  3.3.1服務(wù)器端設(shè)計(jì)9</p><p>  3.3.2客戶端設(shè)計(jì)9</p><p>  3.4接口設(shè)計(jì)10</p><p>  3.4.1 用戶接口10</p><p>  3.4.2 外部接口10</p><p>  3.4

8、.3 內(nèi)部接口10</p><p>  3.5游戲數(shù)據(jù)庫設(shè)計(jì)11</p><p>  3.5.1數(shù)據(jù)庫設(shè)計(jì)要點(diǎn)及難點(diǎn)11</p><p>  3.5.2數(shù)據(jù)庫及其表的建立和使用11</p><p>  3.6 應(yīng)用程序設(shè)計(jì)及簡略代碼12</p><p>  3.6.1股票查詢及顯示界面的程序設(shè)計(jì)12<

9、/p><p>  3.6.2股票信息預(yù)測界面程序設(shè)計(jì)13</p><p>  3.6.3創(chuàng)建并操作數(shù)據(jù)庫的程序設(shè)計(jì)13</p><p>  3.6.4從網(wǎng)絡(luò)獲取股票數(shù)據(jù)16</p><p>  3.6.5從網(wǎng)絡(luò)獲取股票數(shù)據(jù)17</p><p>  3.7 界面設(shè)計(jì)18</p><p>  

10、3.7.1股票信息查詢及顯示界面18</p><p>  3.7.2股票信息預(yù)測界面22</p><p>  3.7.2結(jié)果顯示界面24</p><p><b>  4.游戲?qū)崿F(xiàn)25</b></p><p>  4.1 類的實(shí)現(xiàn)25</p><p>  4.2功能模塊的實(shí)現(xiàn)28<

11、/p><p><b>  5.個人總結(jié)29</b></p><p><b>  結(jié) 論29</b></p><p>  參考文獻(xiàn)及資料:30</p><p><b>  致 謝31</b></p><p>  畢業(yè)設(shè)計(jì)(論文)任務(wù)書</

12、p><p>  1.畢業(yè)設(shè)計(jì)(論文)題目:</p><p>  基于Android的股票預(yù)測游戲</p><p>  2.畢業(yè)設(shè)計(jì)(論文)起止時間:</p><p>  2013年12月10日-2014年6月10日</p><p>  3.畢業(yè)設(shè)計(jì)(論文)所需資料及原始數(shù)據(jù)(指導(dǎo)教師選定部分)</p><

13、;p>  [1]張健,《7步學(xué)會看盤》,北京:中國言實(shí)出版社,2008.</p><p>  [2]張健,《新股民看盤操作細(xì)節(jié)》,北京:中國言實(shí)出版社,2007。</p><p>  [3]范江京,《K線精解從入門到實(shí)戰(zhàn)》,北京:機(jī)械工業(yè)出版社,2010.</p><p>  [4]凱文,《K線贏利實(shí)戰(zhàn)技法》,深圳:海天出版社,2011.</p>

14、<p>  [5]Rick Rogers,Jobn Lombardo,李耀亮譯,《Android應(yīng)用開發(fā)》,北京:人民郵電出版社,2010.</p><p>  [6]朱桂英,《Android開發(fā)應(yīng)用從入門到精通》,北京:中國鐵道出版社,2011.</p><p>  [7]邱太欽,《 K線技術(shù)實(shí)戰(zhàn)精髓》,北京:地震出版社,2008</p><p>  

15、[8]電腦報(bào)編著,《中國新股民實(shí)戰(zhàn)賺錢策略》:K線圖從入門到精通,汕頭:汕頭大學(xué)出版社,2007</p><p>  [9]周家勛, 蔡瑞桃,《 K線之窗:股票實(shí)戰(zhàn)跟蹤》,北京:中國科學(xué)技術(shù)出版社,2006</p><p>  [10]吳亞峰, 蘇亞光,《 Android 2.0游戲開發(fā)實(shí)戰(zhàn)寶典》,北京:人民郵電出版社,2010</p><p>  [11]吳亞峰,

16、 杜化美, 蘇亞光,《 Android編程典型實(shí)例與項(xiàng)目開發(fā)》,北京:電子工業(yè)出版社,2011</p><p>  [12]蔣耘晨,《 Android系統(tǒng)原理和實(shí)戰(zhàn)應(yīng)用》,北京:北京理工大學(xué)出版社,2011</p><p>  4.畢業(yè)設(shè)計(jì)(論文)應(yīng)完成的主要內(nèi)容</p><p>  本題目主要是利用股票的K線的做勢進(jìn)行判斷的游戲。主要實(shí)現(xiàn)的內(nèi)容有:</p&g

17、t;<p>  (1)了解股票交易流程及K線圖的信號意義</p><p> ?。?)獲取股票實(shí)時數(shù)據(jù)及歷史數(shù)據(jù)</p><p> ?。?)繪制股票K線圖</p><p>  (4)K線圖界面與用戶的交互設(shè)計(jì)</p><p>  5.畢業(yè)設(shè)計(jì)(論文)的目標(biāo)及具體要求</p><p>  要求學(xué)生了解股票和K

18、線的基本知識和Java 語言解析XML文件知識,熟悉Jave編程和Eclipse開發(fā)環(huán)境。</p><p>  本課題要求通過網(wǎng)絡(luò)獲取股票的數(shù)據(jù),并畫出兩根K線,用戶判斷趨勢后,根據(jù)實(shí)際情況給出答案,接著顯示下一根K線,讓用戶繼續(xù)判斷,最后給出用戶的準(zhǔn)確率。</p><p>  在此過程中要求學(xué)生掌握Android系統(tǒng)的開發(fā)方法與流程,了解Android系統(tǒng)的結(jié)構(gòu),提高學(xué)生的編程能力和設(shè)計(jì)

19、動手能力,提高實(shí)踐水平,撰寫畢業(yè)設(shè)計(jì)論文。</p><p>  6.完成畢業(yè)設(shè)計(jì)(論文)所需的條件及上機(jī)時數(shù)要求</p><p>  1)Android手機(jī)一部</p><p><b>  2)微型計(jì)算機(jī)一臺</b></p><p><b>  3)圖書館及網(wǎng)絡(luò)</b></p><

20、;p><b>  4)參考資料</b></p><p><b>  上機(jī)250學(xué)</b></p><p>  任務(wù)書批準(zhǔn)日期 年 月 日 教研室(系)主任(簽字) </p><p><b>  **</b></p>&

21、lt;p><b>  畢業(yè)設(shè)計(jì)開題報(bào)告</b></p><p>  題 目 名 稱 基于android的股票預(yù)測游戲程序設(shè)計(jì) </p><p>  題 目 類 別 畢業(yè)設(shè)計(jì) </p><p>  學(xué) 院(系) 電子信息學(xué)院 </p&g

22、t;<p>  專 業(yè) 班 級 信工11001班 </p><p><b>  一、題目來源</b></p><p><b>  生產(chǎn)/社會實(shí)際</b></p><p><b>  研究目的及意義</b></p><p> 

23、 隨著信息化時代的到來,移動通信和互聯(lián)網(wǎng)以及手機(jī)制造技術(shù)的發(fā)展已經(jīng)成為成全球發(fā)展最快、潛力最大、前景最誘人的三大行業(yè)。智能手機(jī)的普及,大大加速了移動互聯(lián)網(wǎng)發(fā)展,網(wǎng)民從PC端向手機(jī)端的遷移趨勢越來越明顯,手機(jī)成為互聯(lián)網(wǎng)終端的王者已是鐵板釘釘,而Android的發(fā)展已經(jīng)占得先機(jī)。到2013年第二季度,安卓終端在全球的裝機(jī)量已超過Windows終端的裝機(jī)量,Android終端取代PC機(jī)成為第一上網(wǎng)設(shè)備。而到2014年,android終端出貨量

24、達(dá)9.5億部,僅android平板電腦就有3.15億部,而PC機(jī)出貨量已不足3億臺。</p><p>  正是因?yàn)槭謾C(jī)通訊為人們帶來很大的便利,很多人都希望在移動的過程中使用手機(jī)快速接入互聯(lián)網(wǎng),繼而來管理自己日常生活中遇到的問題。</p><p>  股票是很多人投資理財(cái)?shù)倪x擇之一,根據(jù)非官方統(tǒng)計(jì),截止2014年第一季度,中國有近1.72億股民。這些股民在自己的手機(jī)或平板上管理自己的股票。

25、此外還有眾多的股票發(fā)燒友在手機(jī)或平板上玩股票類游戲。</p><p>  三、參考文獻(xiàn)及資料:</p><p>  [1]張健,《7步學(xué)會看盤》,北京:中國言實(shí)出版社,2008.</p><p>  [2]張健,《新股民看盤操作細(xì)節(jié)》,北京:中國言實(shí)出版社,2007.</p><p>  [3]范江京,《K線精解從入門到實(shí)戰(zhàn)》,北京:機(jī)械工業(yè)

26、出版社,2010.</p><p>  [4]凱文,《K線贏利實(shí)戰(zhàn)技法》,深圳:海天出版社,2011.</p><p>  [5]Rick Rogers,Jobn Lombardo,李耀亮譯,《Android應(yīng)用開發(fā)》,北京:人民郵電出版社,2010.</p><p>  [6]朱桂英,《Android開發(fā)應(yīng)用從入門到精通》,北京:中國鐵道出版社,2011.<

27、/p><p>  [7]邱太欽,《 K線技術(shù)實(shí)戰(zhàn)精髓》,北京:地震出版社,2008</p><p>  [8]電腦報(bào)編著,《中國新股民實(shí)戰(zhàn)賺錢策略》:K線圖從入門到精通,汕頭:汕頭大學(xué)出版社,2007</p><p>  [9]周家勛, 蔡瑞桃,《 K線之窗:股票實(shí)戰(zhàn)跟蹤》,北京:中國科學(xué)技術(shù)出版社,2006</p><p>  [10]吳亞峰,

28、 蘇亞光,《 Android 2.0游戲開發(fā)實(shí)戰(zhàn)寶典》,北京:人民郵電出版社,2010</p><p>  [11]吳亞峰, 杜化美, 蘇亞光,《 Android編程典型實(shí)例與項(xiàng)目開發(fā)》,北京:電子工業(yè)出版社,2011</p><p>  [12]蔣耘晨,《 Android系統(tǒng)原理和實(shí)戰(zhàn)應(yīng)用》,北京:北京理工大學(xué)出版社,2011</p><p>  [13]安卓巴士

29、論壇《老羅Android開發(fā)視頻教程-安卓巴士》</p><p>  四、國內(nèi)外現(xiàn)狀和發(fā)展趨勢與課題研究方向</p><p>  Android系統(tǒng)由于其開源、利于創(chuàng)新、應(yīng)用程序發(fā)展迅速、智能手機(jī)廠家助力、運(yùn)營商的鼎力支持、機(jī)型多硬件配置優(yōu)良等等優(yōu)點(diǎn),使得android終端產(chǎn)品甫一出現(xiàn),便占據(jù)了操作系統(tǒng)的半壁江山,現(xiàn)在在全球市場占有率已經(jīng)達(dá)到了75%,而在中國android手機(jī)市場份額已超

30、過86%,并且還有繼續(xù)發(fā)力的趨勢。</p><p>  因?yàn)槭謾C(jī)通訊為人們帶來很大的便利,很多人都希望在移動的過程中使用手機(jī)快速接入互聯(lián)網(wǎng),繼而來管理自己日常生活中遇到的問題,而很多股民也希望能在android手機(jī)上管理自己的股票。廣大業(yè)余玩家也希望在工作生活之余,能在手機(jī)或平板上玩一下股票游戲。</p><p>  本課題主要研究方向就是在android系統(tǒng)上開發(fā)出一款針對廣大玩家的股票

31、預(yù)測游戲,它能夠讓股票玩家在工作生活之余輕松一樂,該游戲具有查看股票K線圖及買進(jìn)賣出股票等各種功能。</p><p>  五、主要重難點(diǎn)問題及解決思路</p><p>  程序設(shè)計(jì)中主要有以下難點(diǎn):獲取股票數(shù)據(jù)、圖形用戶界面。</p><p>  本設(shè)計(jì)是從數(shù)據(jù)庫中獲取數(shù)據(jù),采用輕量級的數(shù)據(jù)庫SQLite數(shù)據(jù)庫。Android 平臺提供給我們一個數(shù)據(jù)庫輔助類來創(chuàng)建或

32、打開數(shù)據(jù)庫,這個輔助類繼承自SQLiteOpenHelper類,在該類的構(gòu)造器中,調(diào)用Context中的方法創(chuàng)建并打開一個指定名稱的數(shù)據(jù)庫對象。</p><p>  Android應(yīng)用程序的開發(fā)工具是JAVA語言,使用JAVA開發(fā)用戶界面,將界面上的信息顯示給用戶,由用戶進(jìn)行操作。</p><p>  如圖1所示為游戲設(shè)計(jì)流程圖。</p><p><b>

33、  否</b></p><p><b>  是</b></p><p>  圖1股票信息查詢及顯示功能</p><p>  圖2股票信息預(yù)測功能</p><p>  圖2-6股票信息顯示功能</p><p><b>  工作條件</b></p>&l

34、t;p>  Android手機(jī)一部</p><p><b>  計(jì)算機(jī)一臺</b></p><p>  JAVA集成開發(fā)環(huán)境eclipse</p><p>  Android SDK4.4.2</p><p><b>  圖書館及網(wǎng)絡(luò) </b></p><p><

35、b>  參考資料</b></p><p><b>  進(jìn)度安排</b></p><p>  3周:聯(lián)系指導(dǎo)老師,了解畢業(yè)設(shè)計(jì)相關(guān)事宜,領(lǐng)取任務(wù)書</p><p>  4周~6周:熟悉eclipse,java,xml等相關(guān)知識</p><p>  7周~9周:查閱相關(guān)資料序,了解股票及K線圖的相關(guān)知識&l

36、t;/p><p>  10周:提交開題報(bào)告</p><p>  11周~14周:搭建壞境,程序設(shè)計(jì)及調(diào)試</p><p>  15周:畢業(yè)設(shè)計(jì)及答辯。</p><p><b>  前 言</b></p><p>  隨著信息化時代的到來,移動通信和互聯(lián)網(wǎng)以及手機(jī)制造技術(shù)的發(fā)展已經(jīng)成為成全球發(fā)展最快、潛

37、力最大、前景最誘人的三大行業(yè)。智能手機(jī)的普及,大大加速了移動互聯(lián)網(wǎng)發(fā)展,網(wǎng)民從PC端向手機(jī)端的遷移趨勢越來越明顯,手機(jī)成為互聯(lián)網(wǎng)終端的王者已是鐵板釘釘。</p><p>  Android一詞的本義是指“機(jī)器人”。2003年,AndyRubin在美國成立了一家以Android為名的小公司,并創(chuàng)立了Android手機(jī)操作系統(tǒng)。2005年,Google收購Android公司之后對其進(jìn)行開發(fā),并于2007年11月5日發(fā)

38、布了基于Linux平臺的開源手機(jī)操作系統(tǒng)一Android。為了推廣Android平臺技術(shù),Google和幾十個手機(jī)相關(guān)企業(yè)建立了開放手機(jī)聯(lián)盟,后期主要由開放手機(jī)聯(lián)盟開發(fā)。</p><p>  2008年9月22日,第一款Google手機(jī)—T—Mobile G1在紐約由美國運(yùn)營商T.Mobile USA正式發(fā)布,該由宏達(dá)電制造的手機(jī)是世界上首部使用Android操作系統(tǒng)的手機(jī)。</p><p&g

39、t;  Android開發(fā)平臺由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,被稱是首個針對移動終端開發(fā)的真正開放而完整的移動軟件。</p><p>  中國作為開放手機(jī)聯(lián)盟的初始成員之一,國內(nèi)很多廠商紛紛展開了Android</p><p>  的開發(fā)與研究,陸續(xù)推出了采用Android系統(tǒng)的電子產(chǎn)品。Android不僅有著成熟而眾多的消費(fèi)者,而且社區(qū)的發(fā)展也很紅火,這些都為Android在

40、中國的普及做了很好的推廣作用。</p><p>  android手機(jī)發(fā)展迅速,成為主流,android比原來手機(jī)系統(tǒng)具有很大優(yōu)勢,其友好的用戶界面、簡易流暢的操作模式帶來了前所未有的用戶體驗(yàn),其開源性、可移植性、高效的開發(fā)環(huán)境對android的開發(fā)者提供了很大的便利,所以android手機(jī)的興起是必然的。到2013年第二季度,安卓終端在全球的裝機(jī)量已超過Windows終端的裝機(jī)量,Android終端取代PC機(jī)成

41、為第一上網(wǎng)設(shè)備。而到2014年,android終端出貨量達(dá)9.5億部,僅android平板電腦就有3.15億部,而</p><p>  PC機(jī)出貨量已不足3億臺。</p><p>  正是因?yàn)槭謾C(jī)通訊為人們帶來很大的便利,很多人都希望在移動的過程中使用手機(jī)快速接入互聯(lián)網(wǎng),繼而來管理自己日常生活中遇到的問題。</p><p>  股票是很多人投資理財(cái)?shù)倪x擇之一,根據(jù)非

42、官方統(tǒng)計(jì),截止2014年第一季度,中國有近1.72億股民。這些股民在自己的手機(jī)或平板上管理自己的股票。此外還有眾多的股票發(fā)燒友在手機(jī)或平板上玩股票類游戲。</p><p><b>  1緒論</b></p><p><b>  1.2選題背景</b></p><p>  21世紀(jì)人類將全面進(jìn)入信息社會,信息技術(shù)以令人咋舌的

43、速度飛速發(fā)展,深入到全球各地和各個領(lǐng)域,它對全球的影響是相當(dāng)巨大的,其巨大的力量改變了人類的生活,“數(shù)字化”的概念應(yīng)運(yùn)而生,數(shù)字產(chǎn)品越來越貼近人們的生活,隨之而來的就是人們不斷的追求更多的便捷享受,更多的娛樂氛圍。十年前的手機(jī)僅僅作為一個通信設(shè)備出現(xiàn)在人們面前,但是今天,手機(jī)儼然成為了個人的“迷你計(jì)算機(jī)”,各種各樣的手機(jī),紛亂復(fù)雜的程序軟件,不斷改變著用戶的使用態(tài)度,不斷催生著人們的好奇心。</p><p>  

44、2007年11月05日,Google宣布基于linux平臺的開源手機(jī)操作系統(tǒng):android。該平臺底層以linux內(nèi)核工作為基礎(chǔ),只提供基本功能,中間包括函數(shù)庫和虛擬機(jī),由Java開發(fā)。最上層是各種應(yīng)用軟件,號稱是首個為移動終端打造的真正開放和完整的移動軟件。自2008年9月22日,第一款android手機(jī)面世以來,至今市場占有率已超越symbian、iphone,其發(fā)展速度驚人,良好的用戶體驗(yàn)和強(qiáng)大的應(yīng)用軟件庫是其發(fā)展迅猛的重要原因

45、。</p><p>  手機(jī)成為互聯(lián)網(wǎng)終端的王者已是鐵板釘釘,而Android的發(fā)展已經(jīng)占得先機(jī)。到2013年第二季度,安卓終端在全球的裝機(jī)量已超過Windows終端的裝機(jī)量,Android終端取代PC機(jī)成為第一上網(wǎng)設(shè)備。而到2014年,android終端出貨量達(dá)9.5億部,僅android平板電腦就有3.15億部,而PC機(jī)出貨量已不足3億臺。</p><p>  正是因?yàn)槭謾C(jī)通訊為人們帶

46、來很大的便利,很多人都希望在移動的過程中使用手機(jī)快速接入互聯(lián)網(wǎng),繼而來管理自己日常生活中遇到的問題。</p><p>  股票是很多人投資理財(cái)?shù)倪x擇之一,根據(jù)非官方統(tǒng)計(jì),截止2014年第一季度,中國有近1.72億股民。這些股民在自己的手機(jī)或平板上管理自己的股票。此外還有眾多的股票發(fā)燒友在手機(jī)或平板上玩股票類游戲。</p><p>  1.2選題目的與意義</p><p&

47、gt;  Android平臺的開放性等特點(diǎn)大大促使了技術(shù)的創(chuàng)新,由于其跨平臺開發(fā)的特點(diǎn),同一項(xiàng)目可以運(yùn)行于不同的終端設(shè)備,有助于降低開發(fā)成本。同時還可以使運(yùn)營商能方便地定制特色化的產(chǎn)品,形成自己的競爭優(yōu)勢,這將使手機(jī)制造商具有更強(qiáng)的吸引力和市場發(fā)展?jié)摿Α?lt;/p><p>  本文的研究目的說明如下:</p><p>  1、了解國內(nèi)外Android系統(tǒng)的應(yīng)用現(xiàn)狀,對Android開源手機(jī)操

48、作系統(tǒng)及相關(guān)技術(shù)進(jìn)行理論學(xué)習(xí)。熟悉Android開發(fā)環(huán)境平臺,學(xué)習(xí)Java編程語言。</p><p>  2、詳細(xì)分析基于Linux平臺的Android開源手機(jī)操作系統(tǒng)及其相關(guān)技術(shù),在此基礎(chǔ)上明確系統(tǒng)的設(shè)計(jì)目標(biāo)和總體框架。針對Android系統(tǒng)中的股票預(yù)測游戲設(shè)計(jì)與實(shí)現(xiàn)為主題,定義需求,設(shè)計(jì)軟件架構(gòu)、控件、UI交互界面、數(shù)據(jù)庫和網(wǎng)絡(luò)等方面。</p><p>  3、設(shè)計(jì)并實(shí)現(xiàn)一款基于And

49、roid平臺的股票預(yù)測游戲。本游戲用一種比較先進(jìn)的機(jī)制來預(yù)測股票趨勢,使用戶可以更方便、更準(zhǔn)確、更直接的對股票未來的漲跌趨勢有所了解。</p><p><b>  2.需求分析</b></p><p><b>  2.1可行性分析</b></p><p>  首先進(jìn)行游戲的可行性分析??尚行苑治鍪窃谀壳笆袌鲆延械念愃朴螒蛘{(diào)

50、查基礎(chǔ)上,辯證新游戲的研發(fā)是否具備開發(fā)必要性和可能性,對新游戲的研發(fā)從技術(shù)、經(jīng)濟(jì)、社會因素等多個方面進(jìn)行相關(guān)的分析和研究,以避免造成不必要的投資失誤,保證和提高新游戲開發(fā)成功的把握。可行性研究的目的就是以最小的時間、金錢代價確定疑難問題是否能夠妥善解決。</p><p>  數(shù)據(jù)存儲在開發(fā)中是使用最頻繁的,Android平臺中實(shí)現(xiàn)數(shù)據(jù)存儲的有五種方式,分別是:</p><p>  1、Sh

51、aredPreferences存儲數(shù)據(jù)。除SQLite數(shù)據(jù)庫外,另一種常用的數(shù)據(jù)存儲方式,其本質(zhì)就是一個xml文件,常用于存儲較簡單的參數(shù)設(shè)置。</p><p>  2、文件存儲數(shù)據(jù)。即常說的文件(I/O)存儲方法,常用語存儲大數(shù)量的數(shù)據(jù),但是缺點(diǎn)是更新數(shù)據(jù)將是一件困難的事情。</p><p>  3、SQLite數(shù)據(jù)庫存儲數(shù)據(jù)。SQLite是一個輕量級的數(shù)據(jù)庫,支持基本SQL語法,是常被

52、采用的一種數(shù)據(jù)存儲方式。Android為此數(shù)據(jù)庫提供了一個名為SQLiteDatabase的類,封裝了一些操作數(shù)據(jù)庫的API。</p><p>  4、ComentProvider。Android系統(tǒng)中能實(shí)現(xiàn)所有應(yīng)用程序共享的一種數(shù)據(jù)存儲方式,由于數(shù)據(jù)通常在各應(yīng)用間是互相私密的,所以此存儲方式較少使用,但是其又是必不可少的一種存儲方式。例如音頻,視頻,圖片和通訊錄,一般都可以采用此種方式進(jìn)行存儲。</p&g

53、t;<p>  5、網(wǎng)絡(luò)存儲數(shù)據(jù)。通過網(wǎng)絡(luò)來實(shí)現(xiàn)數(shù)據(jù)的存儲和獲取。</p><p>  基于以上原因,本游戲采用java開發(fā)技術(shù)進(jìn)行開發(fā),數(shù)據(jù)庫采用android手機(jī)穩(wěn)定的SQLite數(shù)據(jù)庫,同時保持?jǐn)?shù)據(jù)的完整性。SQLite數(shù)據(jù)庫的靈活性、安全性和易用性為數(shù)據(jù)庫編程提供了良好的條件。</p><p>  因此,游戲的軟件開發(fā)平臺成熟是非??尚械摹T谟布矫?,科技飛速發(fā)展,硬

54、件更新的速度日新月異,容量變得越來越大,可靠性變得越來越高,價格變得越來越低,其硬件水平完全能滿足此類系統(tǒng)開發(fā)和使用的需要。</p><p>  合理的建立數(shù)據(jù)庫,開發(fā)股票預(yù)測游戲?qū)崿F(xiàn)安全性、高效性管理在技術(shù)上是可行的。</p><p>  經(jīng)濟(jì)要求方面,本游戲是畢業(yè)設(shè)計(jì)項(xiàng)目,不需要經(jīng)費(fèi)預(yù)算等。一臺中配電腦、可上網(wǎng)即可。</p><p>  綜上所述,此游戲開發(fā)在技

55、術(shù)和經(jīng)濟(jì)以及社會因素等方面都是可行,并且投入少量的工作就能達(dá)到明顯的效果。因此系統(tǒng)的開發(fā)是完全可行的,而且是十分有必要的。</p><p><b>  2.2功能需求分析</b></p><p><b>  主要模塊:</b></p><p>  股票信息查詢及顯示模塊:用戶輸入股票代碼,然后游戲按照股票代碼去搜索是否有該

56、股票。如果沒有則游戲會提示重新輸入有效代碼,如果有該股票,則從網(wǎng)絡(luò)上下載并解析xml,再顯示該股票上一個交易日的的信息(如開盤價,收盤價,最高價,最低價)及K線圖,此功能的實(shí)現(xiàn)需要連接網(wǎng)絡(luò),與網(wǎng)絡(luò)服務(wù)器連接。</p><p>  股票信息預(yù)測模塊:根據(jù)該股票上一個交易日的信息,預(yù)測該股票這一個交易日的趨勢,即是漲還是跌。</p><p>  結(jié)果顯示模塊:顯示這一個交易日的該股票的K線圖。

57、</p><p>  2.3實(shí)施方案的選定</p><p><b>  1.開發(fā)平臺的選擇</b></p><p>  Android系統(tǒng)的發(fā)展勢頭迅猛,讓Symbian系統(tǒng)手機(jī)措手不及,android智能手機(jī)數(shù)量已超過iPhone也成事實(shí)。Android的開發(fā)是開源的,安卓開發(fā)更具可行前提,蘋果機(jī)封閉源代碼,使得在眾多智能手機(jī)廠家中一枝獨(dú)秀,

58、但是有些過于封閉;而安卓機(jī)近期風(fēng)生水起,其開源性給開發(fā)者給了極大的優(yōu)勢,雖然目前軟件開發(fā)有些混亂,但相信以后會推出規(guī)范化的操作系統(tǒng)。下面我們來簡單了解一下蘋果和android的開發(fā)要求:</p><p>  iPhone開發(fā)環(huán)境的要求 </p><p><b>  硬件: </b></p><p>  蘋果電腦, 必須是基于Intel的Maci

59、ntosh計(jì)算機(jī)。</p><p>  iPhone或iPod Touch,主要用來測試編寫好的程序。 </p><p><b>  軟件: </b></p><p>  蘋果系統(tǒng)MacOS。 </p><p>  iPhone SDK,SDK中包含蘋果公司的集成開發(fā)環(huán)境包括Xcode,iPhone模擬器及其它一些開發(fā)工

60、具。</p><p>  Xcode:Mac OS X應(yīng)用及開發(fā)iPhone OS,需要在Mac OS X運(yùn)行Xcode的開發(fā)工具 Xcode是Apple的開發(fā)工具套件,其支持開發(fā)項(xiàng)目管理、編輯代碼、構(gòu)建可執(zhí)行程序、代碼級的調(diào)試、代碼版本管理、性能的調(diào)優(yōu)等等。 </p><p>  Interface Builder:完全可視化地設(shè)計(jì)應(yīng)用程序的用戶界面,這是其一大優(yōu)勢。</p>

61、<p>  Android開發(fā)環(huán)境的要求 </p><p>  硬件:一臺電腦(配置中等,內(nèi)存要大)</p><p>  軟件:JDK:是整個Java的核心,包括了Java運(yùn)行環(huán)境,Java工具和Java基礎(chǔ)的類庫。</p><p>  Eclipse:是一個開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù)的集合,

62、用于通過插件組件集成構(gòu)建開發(fā)環(huán)境。Android SDK:Android SDK 指的既是Android專屬的軟件開發(fā)工具包。</p><p>  ADT:在Eclipse下開發(fā)工具的升級和下載工具。從比較中android的必要條件要少,與iPhone開發(fā)相比更具有優(yōu)勢。</p><p>  2008 年9月發(fā)布的Android第一版</p><p>  

63、2013年10月30日,Android4.2(它沿用了4.1版“果凍豆”(Jelly Bean)這一名稱,與Android 4.1相似性很高,但仍在細(xì)節(jié)之后做了一些改進(jìn)與升級,比較重要的包括:Photo Sphere全景拍照;鍵盤手勢輸入;Miracast無線顯示共享;手勢放大縮小屏幕,以及為盲人用戶設(shè)計(jì)的語音輸出和手勢模式導(dǎo)航功能等)版本軟件開發(fā)工具包發(fā)布,Android 4.2在很大的層面上修正了原來Android系統(tǒng)在多個方面所存

64、在的問題,此版本系統(tǒng)不僅僅局限于它在之前Android系統(tǒng)的不足進(jìn)行修正和優(yōu)化,同時也帶來了很多全新的功能。下面我們一起來看看Android 4.2到底給我們帶來了那些方面的改變:</p><p>  1、整體性能有大幅度的提升。</p><p>  2、3G網(wǎng)絡(luò)共享功能。</p><p>  3、Flash的支持。</p><p><

65、b>  App2sd功能。</b></p><p>  5、全新的軟件商店。</p><p>  6、更多的Web應(yīng)用API接口的開發(fā)。</p><p><b>  1.開發(fā)語言的選擇</b></p><p>  Android主流開發(fā)語言是Java,但也可以使用C、C++開發(fā),即使用Android N

66、DK,不過使用NDK編程有一些劣勢,例如程序會變的更加復(fù)雜,兼容性無法保障,無法訪問Framework API,Debug難度更大等。所以一般還是用Java。 </p><p><b>  3.數(shù)據(jù)庫的選擇</b></p><p>  采用SQLite數(shù)據(jù)庫,SQLite是輕量級的、嵌入式的、關(guān)系型數(shù)據(jù)庫,目前已經(jīng)在iPhone、Android等手機(jī)系統(tǒng)中使用,SQL

67、ite可移植性非常好,很容易使用,很小,而且高效、可靠。SQLite嵌入到使用它的應(yīng)用程序中,它們共用相同的進(jìn)程空間,而不是單獨(dú)的一個進(jìn)程。從外部看,它并不同一個RDBMS,但在進(jìn)程內(nèi)部,但是它是完整的,自包含的數(shù)據(jù)庫引擎。在android中當(dāng)需要操作SQLite數(shù)據(jù)庫的時候需要得到一個SQLiteOpenHelper對象,而SQLiteOpenHelper是一個抽象類,開發(fā)時需要繼承這個類,并實(shí)現(xiàn)該類中的一些方法。</p>

68、<p><b>  4.開發(fā)模式的選擇</b></p><p>  android的網(wǎng)絡(luò)編程主要分為2種:一種是基于socket的,另一種是基于http協(xié)議的。第一種方法:基于socket的用法,先啟動服務(wù)器端的一個socket,用于偵聽請求、取得輸入和輸出,客戶端發(fā)起一個socket連接,用于取得輸入和輸出,socket的交互是通過流(輸入輸出流)來完成的;第二種方法:基于h

69、ttp協(xié),一般是發(fā)送請求到某個應(yīng)用服務(wù)器,此時需要URL,設(shè)置緩存獲得輸出流便于服務(wù)器發(fā)送信息,同時向流里寫請求參數(shù),用于獲得輸入流,取數(shù)據(jù)。從這兩種網(wǎng)絡(luò)編程的方式和本次畢設(shè)項(xiàng)目的功能來看,股票實(shí)時更新必須利用網(wǎng)絡(luò)上的webservice獲取數(shù)據(jù),獲取之后進(jìn)行相應(yīng)的操作,所以采用第二種方式。</p><p><b>  5.開發(fā)環(huán)境</b></p><p>  操作系

70、統(tǒng):Android 4.2</p><p><b>  開發(fā)語言:Java</b></p><p>  開發(fā)工具:Eclipse</p><p>  數(shù)據(jù)庫:SQLite</p><p>  2.4游戲流程圖 </p><p> ?。?)查詢及顯示功能</p><p&

71、gt;<b>  如圖2-1所示</b></p><p><b>  否</b></p><p><b>  是</b></p><p>  圖2-1 股票信息查詢及顯示功能</p><p> ?。?)股票信息預(yù)測功能</p><p><b>

72、  如圖2-2所示</b></p><p>  圖2-5股票信息預(yù)測功能</p><p><b>  股票信息顯示功能</b></p><p>  圖2-6股票信息顯示功能</p><p><b>  3游戲設(shè)計(jì)</b></p><p>  3.1游戲功能結(jié)構(gòu)圖&

73、lt;/p><p>  本游戲包括:股票信息查詢及顯示模塊、股票信息預(yù)測模塊、結(jié)果顯示3個模塊。如圖3-1 為游戲功能結(jié)構(gòu)圖。</p><p>  圖3-1 系統(tǒng)功能結(jié)構(gòu)圖</p><p><b>  3.2游戲設(shè)計(jì)目標(biāo)</b></p><p>  了解股票和K線的基本知識和Java 語言解析XML文件知識,熟悉Jave編程

74、和Eclipse開發(fā)環(huán)境。預(yù)期本游戲?qū)⑼ㄟ^對股票信息查詢及顯示模塊、股票信息預(yù)測模塊、結(jié)果顯示3個模塊的實(shí)現(xiàn),能基本滿足用戶的需求,使用戶能夠開心、盡興的玩本游戲。自己熟悉了開發(fā)過程,同時生成各個階段的文檔,完成畢業(yè)設(shè)計(jì)。</p><p><b>  3.3功能設(shè)計(jì)</b></p><p>  3.3.1服務(wù)器端設(shè)計(jì)</p><p>  服務(wù)器

75、端在客戶端與服務(wù)器端的數(shù)據(jù)交換中主要負(fù)責(zé)響應(yīng)客戶端向服務(wù)器端發(fā)送查詢請求,然后將所需信息反饋給客戶端(包括圖片和文字等信息)??蛻舳伺c服務(wù)器之間的通信主要采取HTTP協(xié)議的POST請求,協(xié)議數(shù)據(jù)按照XML格式組裝,采用uTF一8編碼格式,接入方式支持CMWAP/CMNET/WLAN三種網(wǎng)絡(luò)接入方式。本文客戶端通過HTTP請求新浪財(cái)經(jīng)服務(wù)器原來已存在的相應(yīng)的接口,文中所使用的網(wǎng)絡(luò)協(xié)議只是遵循了新浪財(cái)經(jīng)官方服務(wù)器提供的相關(guān)協(xié)議,介于本文只是

76、實(shí)現(xiàn)和遵從該項(xiàng)技術(shù)而不涉及此技術(shù)的設(shè)計(jì)工作,因此不加以詳細(xì)介紹。</p><p>  3.3.2客戶端設(shè)計(jì)</p><p>  股票預(yù)測游戲客戶端的設(shè)計(jì)模塊分為股票列表模塊、股票設(shè)置模塊、股票查詢模塊和股票詳情模塊。</p><p>  (1)股票信息查詢及顯示模塊:股票信息查詢及顯示模塊:用戶輸入股票代碼,然后游戲按照股票代碼去搜索是否有該股票。如果沒有則游戲會提

77、示重新輸入有效代碼,如果有該股票,則從網(wǎng)絡(luò)上下載并解析xml,再顯示該股票上一個交易日的的信息(如開盤價,收盤價,最高價,最低價)及K線圖,此功能的實(shí)現(xiàn)需要連接網(wǎng)絡(luò),與網(wǎng)絡(luò)服務(wù)器連接。</p><p><b>  功能概述:</b></p><p>  需要連接網(wǎng)絡(luò),使用戶掌握股票實(shí)時動態(tài)。</p><p><b>  處理流程:&l

78、t;/b></p><p><b>  1、輸入股票代碼。</b></p><p>  2、當(dāng)本游戲沒有連上網(wǎng)絡(luò)時,本游戲在經(jīng)過后臺處理后,在界面上不會顯示顯示任何信息。</p><p>  3、當(dāng)本游戲連上網(wǎng)絡(luò)后,游戲會判斷該代碼所表示的股票是否存在,當(dāng)該代碼所表示的股票不存在時,游戲會提示用戶該股票不存在;當(dāng)代碼所表示的股票存在時,游

79、戲進(jìn)行下一步。</p><p>  4、從網(wǎng)絡(luò)上下載并解析xml文件。</p><p>  5、游戲會顯示該股票上一個交易日的信息(開盤價、收盤價、最高價、最低價)。</p><p>  6、點(diǎn)擊android手機(jī)的菜單鍵,界面上會出現(xiàn)一下幾個選項(xiàng):刷新、K線圖、關(guān)于、退出等,再點(diǎn)擊K線圖就會顯示該股票的前幾個交易日的K線圖;點(diǎn)擊刷新,就會顯示股票的即時信息;點(diǎn)擊關(guān)

80、于,就會出現(xiàn)本游戲的相關(guān)信息;點(diǎn)擊退出,就會退出該游戲。</p><p> ?。?)股票信息預(yù)測模塊:根據(jù)該股票上一個交易日的信息,股票信息預(yù)測模塊:根據(jù)該股票上一個交易日的信息,預(yù)測該股票這一個交易日的趨勢,即是漲還是跌。</p><p><b>  功能概述:</b></p><p>  用戶預(yù)測該股票這個交易日的信息</p>

81、<p><b>  處理流程:</b></p><p>  1、在android手機(jī)的右下角點(diǎn)擊菜單鍵,會出現(xiàn)幾個選項(xiàng),點(diǎn)擊“預(yù)測”這一選項(xiàng),手機(jī)屏幕就會就會顯示成預(yù)測界面。</p><p>  2、用戶仔細(xì)分析該股票上一個交易日的信息。</p><p>  3、用戶預(yù)測該股票這一個交易日的漲跌趨勢,并且選擇點(diǎn)擊“漲”,“跌”兩個按

82、鈕的其中一個。</p><p> ?。?)結(jié)果顯示模塊:顯示這一個交易日的該股票的K線圖。</p><p><b>  功能概述:</b></p><p>  游戲顯示該股票這個交易日的信息</p><p><b>  處理流程:</b></p><p>  1、從網(wǎng)絡(luò)獲取股

83、票圖片。</p><p><b>  3.4接口設(shè)計(jì) </b></p><p>  3.4.1 用戶接口</p><p>  用戶接口:以股票代碼輸入界面為主,用戶通過該界面的提示,輸入相應(yīng)的股票代碼,游戲經(jīng)過信息處理,以顯示的方式返回給用戶。</p><p>  3.4.2 外部接口</p><p&

84、gt;  硬件接口:主要是顯示屏、鍵盤輸入的操作,由系統(tǒng)內(nèi)部操作,本系統(tǒng)只需調(diào)用相關(guān)的操作方法,未涉及到sd卡的操作。</p><p>  網(wǎng)絡(luò)接口:本游戲有股票信息查詢及預(yù)測功能,需要連接網(wǎng)絡(luò),股票信息(開盤價、收盤價、最高價、最低價)及K線圖從網(wǎng)絡(luò)上獲取,接口由webservice提供,游戲只需通過地址調(diào)用接口即可。</p><p>  3.4.3 內(nèi)部接口</p>&l

85、t;p>  游戲主要分為股票信息查詢及顯示模塊,股票信息預(yù)測模塊,結(jié)果顯示模塊等3個模塊。其中的各模塊之間的接口、調(diào)用關(guān)系,以及模塊間的數(shù)據(jù)傳遞關(guān)系描述如下:</p><p>  股票信息查詢及顯示模塊:當(dāng)股票代碼輸入界面顯示出該股票生一個交易日的信息(開盤價、收盤價、最高價。最低價等)后,再點(diǎn)擊android手機(jī)的菜單鍵,界面上會出現(xiàn)一下幾個選項(xiàng):刷新、K線圖、關(guān)于、退出等,再點(diǎn)擊K線圖就會顯示該股票的前

86、幾個交易日的K線圖,在點(diǎn)擊android手機(jī)的菜單鍵,會顯示預(yù)測人這一選項(xiàng),點(diǎn)擊該選項(xiàng),就會出現(xiàn)預(yù)測界面。</p><p>  股票信息預(yù)測模塊:根據(jù)該股票上一個交易日的信息,股票信息預(yù)測模塊:根據(jù)該股票上一個交易日的信息,預(yù)測該股票這一個交易日的趨勢,即是漲還是跌,再點(diǎn)擊菜單鍵,就會出現(xiàn)K線圖這一選項(xiàng),在點(diǎn)擊這一選項(xiàng),就會顯示該股票這一個交易日的K線圖。</p><p>  3.5游戲數(shù)

87、據(jù)庫設(shè)計(jì)</p><p>  3.5.1數(shù)據(jù)庫設(shè)計(jì)要點(diǎn)及難點(diǎn)</p><p>  在信息管理系統(tǒng)中,數(shù)據(jù)庫管理在有著非常重要的地位。一個健全良好的數(shù)據(jù)庫設(shè)計(jì),可以大幅度提高的數(shù)據(jù)信息存儲效率,從而保證數(shù)據(jù)的完整性和一致性,與此同時一個合理成熟的數(shù)據(jù)庫結(jié)構(gòu)有利于應(yīng)用開發(fā)程序提高系統(tǒng)的運(yùn)行、實(shí)現(xiàn)和響應(yīng)速度。本游戲采用SQLite作為后臺數(shù)據(jù)庫,實(shí)現(xiàn)小數(shù)據(jù)量存儲和高效地運(yùn)行速度。數(shù)據(jù)庫設(shè)計(jì)有以下

88、要點(diǎn)和難點(diǎn):</p><p> ?。?)第一階段的設(shè)計(jì)任務(wù):首先是進(jìn)行系統(tǒng)調(diào)研,必不可少,然后收集和分析用戶需求,研究其中的聯(lián)系完成數(shù)據(jù)庫的概念設(shè)計(jì)。</p><p>  (2)第二階段的設(shè)計(jì)任務(wù):首先是根據(jù)第一階段已完成的概念設(shè)計(jì)進(jìn)行數(shù)據(jù)庫的邏輯設(shè)計(jì),然后完成E-R模型向邏輯模型轉(zhuǎn)換。</p><p> ?。?)第三階段設(shè)計(jì)的任務(wù):首先是根據(jù)第二階段的E-R模型,

89、完成數(shù)據(jù)庫的物理設(shè)計(jì),確定表的結(jié)構(gòu),最終建立數(shù)據(jù)庫模型。</p><p>  3.5.2數(shù)據(jù)庫及其表的建立和使用</p><p>  系統(tǒng)采用SQLite數(shù)據(jù)庫,在設(shè)計(jì)表時先要準(zhǔn)備如下工作:</p><p>  構(gòu)造函數(shù),調(diào)用父類 SQLiteOpenHelper 的構(gòu)造函數(shù)。這個方法共有四個參數(shù):上下文的環(huán)境(例如,一個 Activity),數(shù)據(jù)庫的名字,一個可選

90、的游標(biāo)工廠對象(通常是 Null),一個代表你當(dāng)前正在使用的數(shù)據(jù)庫模型版本的整數(shù)。</p><p>  onCreate()方法,它需要一個 SQLiteDatabase 對象作為參數(shù),根據(jù)需要然后對這個對象進(jìn)行填充表和初始化數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)庫表的建立。</p><p>  onUpgrage() 方法,它共有三個參數(shù),一個 是SQLiteDatabase 對象,第二個是舊的版本號和一個新的

91、版本號,這樣你就可以清楚的把一個數(shù)據(jù)庫從舊版本的模型轉(zhuǎn)變到新版本的模型。</p><p>  3.6 應(yīng)用程序設(shè)計(jì)及簡略代碼</p><p>  3.6.1股票查詢及顯示界面的程序設(shè)計(jì)</p><p>  該界面布局文件命名為main.xml。 </p><p>  <ImageView android:layout_width=&q

92、uot;fill_parent" ....../></p><p>  <TextView android:id="@+id/textView1" ....../></p><p>  /**動態(tài)匹配輸入內(nèi)容*/</p><p>  <AutoCompleteTextView android:id="@

93、+id/autoTextView" ...... /></p><p>  <ImageButton android:id="@+id/SearchButton" ....../></p><p>  <TextView android:id="@+id/stockName" ...... /></p&g

94、t;<p>  <TextView android:id="@+id/stockId" ...... /></p><p>  <TextView android:id="@+id/priceTime" ...... /></p><p>  <TextView android:id="@+id/

95、newPrice" ...... /></p><p>  <TextView android:id="@+id/openPrice0" ....../></p><p>  <TextView android:id="@+id/upDownPrice" ...... /></p><p&g

96、t;  <TextView android:id="@+id/upDown" ...... /></p><p>  <TextView android:id="@+id/openPrice1" ...... /></p><p>  <TextView android:id="@+id/stockIncre

97、ase1" ....../></p><p>  <TextView android:id="@+id/highestPrice1" ...... /></p><p>  <TextView android:id="@+id/lowestPrice1" ...... /></p><p&g

98、t;  <TextView android:id="@+id/openPrice2" ...... /></p><p>  <TextView android:id="@+id/stockIncrease2"....../></p><p>  <TextView android:id="@+id/highe

99、stPrice2"....../></p><p>  <TextView android:id="@+id/lowestPrice2"....../></p><p>  3.6.2股票信息預(yù)測界面程序設(shè)計(jì)</p><p>  股票信息查詢及顯示界面、股票信息預(yù)測界面和結(jié)果顯示界面布局的簡略代碼。該界面布局文件命名為

100、fragment_fone.xml。</p><p>  <TextView android:id="@+id/textView1 ....../></p><p>  <TimingView android:id="@+id/timingView" ....../></p><p>  <TextView

101、 android:id="@+id/textView2 ....../></p><p>  <EditText android:id="@+id/stockCode" ....../></p><p>  <TextView android:id="@+id/textView3 ....../></p>

102、<p>  <RadioGroup android:id="@+id/strend"...... ></p><p>  <RadioButton android:id="@+id/strendUp" ....../></p><p>  <RadioButton android:id="@+id/

103、strendDown" ....../> </p><p>  <TextView android:id="@+id/textView4 ....../></p><p>  3.6.3創(chuàng)建并操作數(shù)據(jù)庫的程序設(shè)計(jì)</p><p>  大家都知道Android平臺提供給我們一個數(shù)據(jù)庫輔助類來創(chuàng)建或打開數(shù)據(jù)庫,這個輔助

104、類繼承自SQLiteOpenHelper類,在該類的 構(gòu)造器中,調(diào)用Context中的方法創(chuàng)建并打開一個指定名稱的數(shù)據(jù)庫對象。繼承和擴(kuò)展SQLiteOpenHelper類主要做的工作就是重寫以下兩個 方法:</p><p>  onCreate(SQLiteDatabase db) : 當(dāng)數(shù)據(jù)庫被首次創(chuàng)建時執(zhí)行該方法,一般將創(chuàng)建表等初始化操作在該方法中執(zhí)行。</p><p>  onUpg

105、rade(SQLiteDatabse dv, int oldVersion,int new Version):當(dāng)打開數(shù)據(jù)庫時傳入的版本號與當(dāng)前的版本號不同時會調(diào)用該方法。</p><p>  除了上述兩個必須要實(shí)現(xiàn)的方法外,還可以選擇性地實(shí)現(xiàn)onOpen 方法,該方法會在每次打開數(shù)據(jù)庫時被調(diào)用。SQLiteOpenHelper 類的基本用法是:當(dāng)需要創(chuàng)建或打開一個數(shù)據(jù)庫并獲得數(shù)據(jù)庫對象時,首先根據(jù)指定的文件名創(chuàng)建

106、一個輔助對象,然后調(diào)用該對象的getWritableDatabase 或 getReadableDatabase方法 獲得SQLiteDatabase 對象。調(diào)用getReadableDatabase 方法返回的并不總是只讀數(shù)據(jù)庫對象,一般來說該方法和getWriteableDatabase 方法的返回情況相同,只有在數(shù)據(jù)庫僅開放只讀權(quán)限或磁盤已滿時才會返回一個只讀的數(shù)據(jù)庫對象。</p><p>  本游戲創(chuàng)建并

107、操作數(shù)據(jù)庫的簡略代碼如下代碼:</p><p>  //SQLiteOpenHelper子類必須要的一個構(gòu)造函數(shù) </p><p>  public DBHelper(Context context, String name, CursorFactory factory,int version) { </p><p>  //必須通過super 調(diào)用父類的構(gòu)造函

108、數(shù) </p><p>  super(context, name, factory, version); </p><p><b>  } </b></p><p>  //數(shù)據(jù)庫的構(gòu)造函數(shù),傳遞三個參數(shù)的 </p><p>  public DBHelper(Context context, String na

109、me, int version){ </p><p>  this(context, name, null, version); </p><p><b>  } </b></p><p>  //數(shù)據(jù)庫的構(gòu)造函數(shù),傳遞一個參數(shù)的, 數(shù)據(jù)庫名字和版本號都寫死了 </p><p>  public DBHelper

110、(Context context){ </p><p>  this(context, DB_NAME, null, VERSION); </p><p><b>  } </b></p><p>  // 回調(diào)函數(shù),第一次創(chuàng)建時才會調(diào)用此函數(shù),創(chuàng)建一個數(shù)據(jù)庫 </p><p>  @Override <

111、/p><p>  public void onCreate(SQLiteDatabase db) { </p><p>  this.db = db; </p><p>  System.out.println("Create Database"); </p><p>  db.execSQL(CREATE_TBL);

112、 </p><p><b>  } </b></p><p>  //回調(diào)函數(shù),當(dāng)你構(gòu)造DBHelper的傳遞的Version與之前的Version調(diào)用此函數(shù) </p><p>  @Override </p><p>  public void onUpgrade(SQLiteDatabase db, int o

113、ldVersion, int newVersion) { </p><p>  System.out.println("update Database"); </p><p><b>  } </b></p><p><b>  //插入方法 </b></p><p> 

114、 public void insert(ContentValues values){ </p><p>  //獲取SQLiteDatabase實(shí)例 </p><p>  SQLiteDatabase db = getWritableDatabase(); </p><p>  //插入數(shù)據(jù)庫中 </p><p>  db.inser

115、t(TABLE_NAME, null, values); </p><p>  db.close(); </p><p><b>  } </b></p><p><b>  //查詢方法 </b></p><p>  public Cursor query(){ </p>

116、<p>  SQLiteDatabase db = getReadableDatabase(); </p><p>  //獲取Cursor </p><p>  Cursor c = db.query(TABLE_NAME, null, null, null, null, null, null, null); </p><p>  return c

117、; </p><p><b>  } </b></p><p>  //根據(jù)唯一標(biāo)識_id 來刪除數(shù)據(jù) </p><p>  public void delete(int id){ </p><p>  SQLiteDatabase db = getWritableDatabase(); </p>

118、<p>  db.delete(TABLE_NAME, "_id=?", new String[]{String.valueOf(id)}); </p><p><b>  } </b></p><p>  //更新數(shù)據(jù)庫的內(nèi)容 </p><p>  public void update(Content

119、Values values, String whereClause, String[]whereArgs){ </p><p>  SQLiteDatabase db = getWritableDatabase(); </p><p>  db.update(TABLE_NAME, values, whereClause, whereArgs); </p><p&

溫馨提示

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

評論

0/150

提交評論