畢業(yè)論文-基于Android系統(tǒng)的家庭理財(cái)通軟件的設(shè)計(jì)-收入管理模塊_第1頁(yè)
畢業(yè)論文-基于Android系統(tǒng)的家庭理財(cái)通軟件的設(shè)計(jì)-收入管理模塊_第2頁(yè)
畢業(yè)論文-基于Android系統(tǒng)的家庭理財(cái)通軟件的設(shè)計(jì)-收入管理模塊_第3頁(yè)
畢業(yè)論文-基于Android系統(tǒng)的家庭理財(cái)通軟件的設(shè)計(jì)-收入管理模塊_第4頁(yè)
畢業(yè)論文-基于Android系統(tǒng)的家庭理財(cái)通軟件的設(shè)計(jì)-收入管理模塊_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、PAGE 河北農(nóng)業(yè)大學(xué)信息學(xué)院本科畢業(yè)論文 題 目:基于Android系統(tǒng)的家庭理財(cái)通軟件的設(shè)計(jì)收入管理模塊 學(xué) 院: 信息科學(xué)與技術(shù)學(xué)院 專業(yè)班級(jí): 計(jì)算機(jī)科學(xué)與技術(shù)0902班 學(xué) 號(hào): 學(xué)生姓名: 指導(dǎo)教師姓名: 指導(dǎo)教師職稱: 教授 二O一三 年 五 月 二十八 日 摘 要基于安卓系統(tǒng)的家庭理財(cái)通軟件收入模塊是在為改變筆記本,電腦記錄個(gè)人收入情況的局限性,為了適應(yīng)不斷發(fā)展的手機(jī)技術(shù)時(shí)代。主要是面向使用安卓智能手機(jī)一族,它能夠更加迅速、直接、及時(shí)的處理個(gè)人收入情況。該軟件收入部分主要內(nèi)容包括填寫新增收入、瀏覽收入信息、修改收入信息、刪除收入信息。反映出個(gè)人收入情況,且系統(tǒng)功能操作方便、易懂

2、,頁(yè)面設(shè)計(jì)美觀大方,操作簡(jiǎn)便,容易上手。在通過(guò)對(duì)人們記錄收入習(xí)慣的調(diào)查與分析后,嘗試采用面向 對(duì)象系統(tǒng)分析與設(shè)計(jì)方法,設(shè)計(jì)實(shí)現(xiàn)此系統(tǒng)模塊,進(jìn)行收入的增、刪、查、改操作,以及對(duì)SQLite進(jìn)行管理。關(guān)鍵字 .安卓理財(cái)系統(tǒng) SQLite JavaAbstract Based on android system of family financial management software module is to change the laptop, computer records of personal income limitations, in order to adapt to the

3、continuous development of mobile technology。Mainly is to use android smartphone gens, it can more quickly and timely directly dealing with personal income.Income part of the software mainly includes to fill in additional income to browse information modify information delete revenue income.Reflect p

4、ersonal income, and the system function is easy to operate and easy to understand, design beautiful generous, simple operation, easy to get started.In through to the people, after investigation and analysis of the income used to record attempt USES the object-oriented system analysis and design meth

5、od, design and realization of the system module, change operation during a revenue increase, delete, and manage the SQLite.Keywords: Android wealth management system, SQLite, Java.目 錄 TOC o 1-3 h z u HYPERLINK l _Toc326421780 1.緒論 PAGEREF _Toc326421780 h 1 HYPERLINK l _Toc326421781 1.1 前言 PAGEREF _T

6、oc326421781 h 1 HYPERLINK l _Toc326421782 1.2 課題研究的背景及意義 PAGEREF _Toc326421782 h 1 HYPERLINK l _Toc326421784 1.3國(guó)內(nèi)外研究的現(xiàn)狀1 HYPERLINK l _Toc326421785 1.4設(shè)計(jì)的主要工作 PAGEREF _Toc326421785 h 2 1.5 論文組織 HYPERLINK l _Toc326421786 2.開發(fā)環(huán)境和開發(fā)技術(shù) PAGEREF _Toc326421786 h 3 HYPERLINK l _Toc326421787 2.1 系統(tǒng)介紹 PAGEREF

7、 _Toc326421787 h 3 HYPERLINK l _Toc326421788 2.1.1 安卓系統(tǒng)簡(jiǎn)介 PAGEREF _Toc326421788 h 3 HYPERLINK l _Toc326421789 2.1.2 理財(cái)軟件簡(jiǎn)介3 HYPERLINK l _Toc326421790 2.2工具環(huán)境介紹 PAGEREF _Toc326421790 h 4 HYPERLINK l _Toc326421791 2.2.1 開發(fā)環(huán)境的選擇 PAGEREF _Toc326421791 h 4 HYPERLINK l _Toc326421792 2.2.2 JAVA語(yǔ)言簡(jiǎn)介4 HYPERL

8、INK l _Toc326421793 2.2.3 SQLite簡(jiǎn)介 PAGEREF _Toc326421793 h 52.2.4 開發(fā)工具Eclipse簡(jiǎn)介 HYPERLINK l _Toc326421794 3.需求分析7 HYPERLINK l _Toc326421795 3.1 設(shè)計(jì)思想7 HYPERLINK l _Toc326421796 3.2 可行性分析7 HYPERLINK l _Toc326421797 3.2.1 操作可行性7 HYPERLINK l _Toc326421798 3.2.2 技術(shù)可行性7 HYPERLINK l _Toc326421799 3.2.3 經(jīng)濟(jì)可

9、行性7 HYPERLINK l _Toc326421800 3.3 功能需求 PAGEREF _Toc326421800 h 7 HYPERLINK l _Toc326421801 3.3.1 基本功能需求 PAGEREF _Toc326421801 h 7 HYPERLINK l _Toc326421802 3.3.2 用戶界面需求8 HYPERLINK l _Toc326421803 4.系統(tǒng)設(shè)計(jì)9 HYPERLINK l _Toc326421804 4.1 總體結(jié)構(gòu)設(shè)計(jì)9 HYPERLINK l _Toc326421805 4.1.1 系統(tǒng)設(shè)計(jì)基礎(chǔ)9 HYPERLINK l _Toc32

10、6421806 4.1.2 模塊設(shè)計(jì)9 HYPERLINK l _Toc326421807 4.1.3 系統(tǒng)流程10 HYPERLINK l _Toc326421819 4.2 數(shù)據(jù)庫(kù)設(shè)計(jì)11 HYPERLINK l _Toc326421820 4.2.1 數(shù)據(jù)庫(kù)簡(jiǎn)介 PAGEREF _Toc326421820 h 12 HYPERLINK l _Toc326421821 4.2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)原則 PAGEREF _Toc326421821 h 12 HYPERLINK l _Toc326421822 5.系統(tǒng)實(shí)現(xiàn)12 HYPERLINK l _Toc326421823 5.1用戶主要功能程

11、序代碼12 HYPERLINK l _Toc326421824 5.2主要應(yīng)用界面16 HYPERLINK l _Toc326421825 5.2.1用戶登陸界面17 HYPERLINK l _Toc326421826 5.2.2用戶查詢頁(yè)面17 HYPERLINK l _Toc326421827 5.2.3用戶收入選擇模式18 HYPERLINK l _Toc326421831 6.結(jié)束語(yǔ)19 HYPERLINK l _Toc326421832 6.1 總結(jié)19 HYPERLINK l _Toc326421833 6.2 心得體會(huì)19 HYPERLINK l _Toc326421834 致謝

12、 PAGEREF _Toc326421834 h 20 HYPERLINK l _Toc326421835 參考文獻(xiàn)21PAGE 211.緒論前言隨著金融市場(chǎng)的迅速發(fā)展,個(gè)人理財(cái)正在悄然進(jìn)入人們的生活。人們?cè)诜e累財(cái)富的同時(shí),開始意識(shí)到要通過(guò)專業(yè)化的理財(cái)服務(wù)、功能強(qiáng)大的理財(cái)軟件,利用有效的金融市場(chǎng)和多元化的金融工具,確保財(cái)富的保值增值和必要的風(fēng)險(xiǎn)管理。此次課題針對(duì)Android 平臺(tái)下的軟件開發(fā)的架構(gòu)、設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行探討,通過(guò)Android平臺(tái)實(shí)現(xiàn)一個(gè)功能齊全的個(gè)人理財(cái)軟件。相較于電腦上的理財(cái)軟件,由于載體手機(jī)的便攜性和高使用率,它更大限度地滿足了消費(fèi)者的需求,有著更廣泛的受眾,如年輕的白領(lǐng)們。

13、他們有著較強(qiáng)的理財(cái)意識(shí),又屬于高收入群體,對(duì)日新月異的技術(shù)發(fā)展有著很強(qiáng)的接受度和可塑性。從這方面說(shuō),手機(jī)理財(cái)產(chǎn)品的潛在市場(chǎng)相當(dāng)可觀。1.2 課題研究的背景及意義多年來(lái)人們都使用傳統(tǒng)的人工方式記錄和管理家庭或自己財(cái)務(wù)情況。這種管理和記錄方式存在著不可避免的缺點(diǎn),如效率太差,保密性不高等;隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日益成熟,人們通過(guò)程序軟件方便生活的想法也愈加強(qiáng)烈。 手機(jī),作為現(xiàn)代生活中必不可少的工具,儼然已發(fā)展成一部多媒體終端,其重要性不言而喻;現(xiàn)代的時(shí)代進(jìn)入高速的信息時(shí)代,人們?cè)絹?lái)越看重信息的收集與傳播。手機(jī)、軟件的功能要越來(lái)越強(qiáng)大才能滿足人們的需求,功能強(qiáng)大也就成為廣大時(shí)尚用戶的個(gè)性

14、化需求之一。 手機(jī)理財(cái)軟件恰恰能滿足用戶的這種需求。與此同時(shí),隨著塞班系統(tǒng)的逐漸沒(méi)落,Android引領(lǐng)的智能手機(jī)迅速火熱,除卻iphone自己的蘋果系統(tǒng),安卓系統(tǒng)作為最新的開源手機(jī)操作系統(tǒng),現(xiàn)已被大量手機(jī)廠家所采用,在不久的將來(lái)必將占據(jù)大量的市場(chǎng)份額。隨著年輕群體對(duì)手機(jī)的依賴,傳統(tǒng)的理財(cái)記錄方式已經(jīng)不能適應(yīng)迅速發(fā)展的手機(jī)時(shí)代。為此,一款基于Android 手機(jī)平臺(tái)的個(gè)人理財(cái)軟件應(yīng)運(yùn)而生。 國(guó)內(nèi)外研究的現(xiàn)狀家庭理財(cái)系統(tǒng)在國(guó)外很多地方使用已經(jīng)相當(dāng)?shù)钠毡?,而且?guó)外的基于安卓系統(tǒng)的家庭理財(cái)系統(tǒng)功能相當(dāng)強(qiáng)大,比如系統(tǒng)里包含有股票的預(yù)測(cè)、基金的分析等等。而隨著國(guó)內(nèi)物價(jià)飛漲形勢(shì)的影響,人們?cè)絹?lái)越意識(shí)到個(gè)人

15、理財(cái)?shù)谋匾?。同時(shí)簡(jiǎn)單原始的使用紙筆進(jìn)行記錄甚至計(jì)算機(jī)進(jìn)行記錄的方式已經(jīng)不能滿足人們的需求,因此,基于手機(jī)的個(gè)人理財(cái)系統(tǒng)成為當(dāng)下最受關(guān)注的軟件系統(tǒng)。國(guó)內(nèi)如此巨大的市場(chǎng)需求也促使了很多公司對(duì)理財(cái)系統(tǒng)的研究。1.4 設(shè)計(jì)的主要工作本系統(tǒng)包括登陸窗體的設(shè)計(jì)以及理財(cái)系統(tǒng)的收入部分的設(shè)計(jì)。收入部分的各個(gè)模塊分別為新增收入模塊、瀏覽收入信息模塊、修改收入信息模塊、刪除收入信息模塊。新增收入模塊主要實(shí)現(xiàn)的功能是新增收入的基本信息,包括收入的金額以及收入的來(lái)源;瀏覽收入信息模塊主要實(shí)現(xiàn)的功能是瀏覽近期個(gè)人收入,方便及時(shí)理財(cái);修改收入信息模塊主要實(shí)現(xiàn)的功能是對(duì)近期個(gè)人收入的金額以及來(lái)源進(jìn)行修改;刪除收入信息模塊

16、主要實(shí)現(xiàn)的功能是對(duì)近期個(gè)人收入的金額以及來(lái)源進(jìn)行刪除;1.5 論文組織論文全文共分為六章:緒論。這一章主要介紹了論文選題的引言、對(duì)課題研究的背景及意義進(jìn)行了分析。 第二章 開發(fā)環(huán)境和開發(fā)技術(shù)。這一章介紹了系統(tǒng)、系統(tǒng)的開發(fā)模式、開發(fā)環(huán)境等基礎(chǔ)知識(shí)。第三章 需求分析。這一章主要介紹了系統(tǒng)設(shè)計(jì)思想、可行性分析、功能和性能需求。第四章 系統(tǒng)設(shè)計(jì)。這一章主要介紹了系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì)和系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì),其中數(shù)據(jù)庫(kù)的設(shè)計(jì)包括了概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)。第五章 系統(tǒng)實(shí)現(xiàn)。這一章介紹了系統(tǒng)的所有模塊和它的功能。選取具有代表性的數(shù)據(jù)進(jìn)行測(cè)試,保證系統(tǒng)正常運(yùn)行。第六章 結(jié)束語(yǔ)。對(duì)系統(tǒng)實(shí)現(xiàn)過(guò)程進(jìn)行了總結(jié)。2.開發(fā)

17、環(huán)境和開發(fā)技術(shù)2.1 系統(tǒng)介紹系統(tǒng)是在一定環(huán)境中相互聯(lián)系和相互作用的若干部分組成的具有某種功能的集合,一個(gè)系統(tǒng)內(nèi)可能包含許多功能各異的子系統(tǒng),這意味著系統(tǒng)可以具有多層結(jié)構(gòu),一個(gè)系統(tǒng)的整體功能往往大于單個(gè)子系統(tǒng)的功能之和。本系統(tǒng)可以及時(shí)、準(zhǔn)確、快捷的掌握每次收入的明細(xì),能夠快速的對(duì)收入情況進(jìn)行增、刪、查、改等操作,充分滿足現(xiàn)代生活對(duì)手機(jī)記錄收入部分的需求。2.1.1 安卓系統(tǒng)簡(jiǎn)介 Android是一種基于 HYPERLINK /view/1634.htm t _blank Linux的自由及開放源代碼的 HYPERLINK /view/880.htm t _blank 操作系統(tǒng),主要使用于移動(dòng)設(shè)

18、備,如 HYPERLINK /view/535.htm t _blank 智能手機(jī)和 HYPERLINK /view/74538.htm t _blank 平板電腦,由 HYPERLINK /view/105.htm t _blank Google公司和 HYPERLINK /view/1245202.htm t _blank 開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。Android的系統(tǒng)架構(gòu)和其操作系統(tǒng)一樣,采用了分層的架構(gòu)。Android分為四個(gè)層,從高層到低層分別是應(yīng)用程序?qū)?、?yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層和Linux HYPERLINK /view/1366.htm t _blank 內(nèi)核層。應(yīng)用程序An

19、droid會(huì)同一系列核心應(yīng)用程序包一起發(fā)布,該應(yīng)用程序包包括客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應(yīng)用程序都是使用JAVA語(yǔ)言編寫的。應(yīng)用程序框架開發(fā)人員也可以完全訪問(wèn)核心應(yīng)用程序所使用的HYPERLINK /view/16068.htm t _blankAPI框架。該應(yīng)用程序的架構(gòu)設(shè)計(jì)簡(jiǎn)化了組件的重用;任何一個(gè)應(yīng)用程序都可以發(fā)布它的功能塊并且任何其它的應(yīng)用程序都可以使用其所發(fā)布的功能塊(不過(guò)得遵循框架的安全性)。同樣,該應(yīng)用程序重用機(jī)制也使用戶可以方便的替換程序組件。系統(tǒng)運(yùn)行庫(kù)Android 包含一些C/C+庫(kù),這些庫(kù)能被 HYPERLINK /view/49

20、71681.htm t _blank Android系統(tǒng)中不同的 HYPERLINK /view/379950.htm t _blank 組件使用。它們通過(guò) Android 應(yīng)用程序框架為 HYPERLINK /view/2114461.htm t _blank 開發(fā)者提供服務(wù)。2.1.2 理財(cái)軟件簡(jiǎn)介理財(cái)軟件,是指以財(cái)務(wù)賬戶為核心,以增值獲利為目的, 以資金流動(dòng)為手段,以統(tǒng)計(jì)分析為決策的管理軟件。理財(cái)軟件頗受白領(lǐng)青睞,不少以前家庭收支一筆糊涂賬的白領(lǐng),操縱理財(cái)軟件實(shí)現(xiàn)了HYPERLINK /view/142850.htm t _blank家庭資產(chǎn)設(shè)置裝備擺設(shè)更合理, HYPERLINK /v

21、iew/1007475.htm t _blank 財(cái)政風(fēng)險(xiǎn)最小化。今朝已有多家軟件公司和銀行先后推出理財(cái)軟件供客戶下載利用,有的是互聯(lián)網(wǎng)公司開發(fā)的中國(guó)式理財(cái)軟件,家庭收支記賬理財(cái)軟件等,具有多賬戶登錄等功能,有的是銀行自己開辟的軟件,如招行的 HYPERLINK /view/1504484.htm t _blank 財(cái)富賬戶專業(yè)版,里面囊括了賬戶總覽、現(xiàn)金治理、投資治理三大板塊;有的是第三方機(jī)構(gòu)供給的軟件,如工行、農(nóng)行、民生銀行等推出的第三方機(jī)構(gòu)供給的理財(cái)軟件,客戶直接從網(wǎng)上銀行下載,功能更壯大,不僅包含 HYPERLINK /view/344312.htm t _blank 投資理財(cái)?shù)墓δ埽?/p>

22、還包含記賬、財(cái)政分析、聯(lián)系關(guān)系賬戶等細(xì)枝小節(jié)的功能。理財(cái)軟件當(dāng)然是實(shí)現(xiàn)資產(chǎn)收益最大化的好輔佐,帶給用戶良多實(shí)惠,但好的理財(cái)習(xí)慣才更主要。理財(cái)專家建議,理財(cái)軟件用戶最好在年頭就擬定出昔時(shí)的收支預(yù)算表,便于每月監(jiān)控自己的收進(jìn)和支出比例。此外,理財(cái)記賬貴在堅(jiān)持,理財(cái)軟件只是工具,養(yǎng)成理財(cái)記賬的習(xí)慣最主。2.2工具環(huán)境介紹2.2.1 開發(fā)環(huán)境的選擇開發(fā)與運(yùn)行的環(huán)境的選擇會(huì)影響到數(shù)據(jù)庫(kù)設(shè)計(jì),本系統(tǒng)開發(fā)與運(yùn)行環(huán)境如下:開發(fā)環(huán)境:Windows XP professional開發(fā)工具:Eclipse數(shù)據(jù)庫(kù)管理系統(tǒng):SQLLite本系統(tǒng)主要采用Java與SQLLite相結(jié)合的技術(shù)。利用Eclipse軟件來(lái)設(shè)計(jì)

23、系統(tǒng)界面,使整個(gè)系統(tǒng)更具有吸引力和良好的價(jià)值2.2.2 Java語(yǔ)言簡(jiǎn)介JavaHYPERLINK /view/552871.htm t _blank編程語(yǔ)言的風(fēng)格十分接近 HYPERLINK /view/10075.htm t _blank C、 HYPERLINK /view/824.htm t _blank C+語(yǔ)言。Java是一個(gè)純粹的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,它繼承了 C+語(yǔ)言面向?qū)ο蠹夹g(shù)的核心。Java舍棄了C語(yǔ)言中容易引起錯(cuò)誤的 HYPERLINK /view/159417.htm t _blank 指針(以引用取代)、運(yùn)算符HYPERLINK /view/126530.htm t

24、 _blank重載(operator overloading)、 HYPERLINK /view/459327.htm t _blank 多重繼承(以接口取代)等特性,增加了 HYPERLINK /view/159846.htm t _blank 垃圾回收器功能用于回收不再被引用的對(duì)象所占據(jù)的內(nèi)存空間,使得程序員不用再為內(nèi)存管理而擔(dān)憂。在 Java 1.5 版本中,Java 又引入了HYPERLINK /view/1105026.htm t _blank泛型編程(Generic Programming)、類型安全的 HYPERLINK /view/116405.htm t _blank 枚舉、

25、不定長(zhǎng)參數(shù)和自動(dòng)裝/拆箱等語(yǔ)言特性。 HYPERLINK /view/29.htm t _blank Java不同于一般的 HYPERLINK /view/1182926.htm t _blank 編譯執(zhí)行計(jì)算機(jī)語(yǔ)言和 HYPERLINK /view/1182922.htm t _blank 解釋執(zhí)行計(jì)算機(jī)語(yǔ)言。它首先將 HYPERLINK /view/60376.htm t _blank 源代碼編譯成二進(jìn)制 HYPERLINK /view/560330.htm t _blank 字節(jié)碼(bytecode),然后依賴各種不同平臺(tái)上的虛擬機(jī)來(lái)解釋執(zhí)行字節(jié)碼。從而實(shí)現(xiàn)了“一次編譯、到處執(zhí)行”的跨平

26、臺(tái)特性。不過(guò),每次的執(zhí)行編譯后的字節(jié)碼需要消耗一定的時(shí)間,這同時(shí)也在一定程度上降低了 Java 程序的HYPERLINK /view/1556442.htm t _blank運(yùn)行效率。編輯Java源代碼可以使用任何無(wú)格式的文本編輯器,在Windows操作系統(tǒng)上可以使用記事本(Notepad)、EditPlus等程序,在Linux平臺(tái)上可使用VI工具等。2.2.3 SQLLite數(shù)據(jù)庫(kù)簡(jiǎn)介SQLite是一款輕型的數(shù)據(jù)庫(kù),SQLite的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/

27、Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語(yǔ)言相結(jié)合,比如Tcl、PHP、Java 等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)講,它的處理速度比他們都快。SQLite數(shù)據(jù)庫(kù)是D.Richard Hipp用C語(yǔ)言編寫的開源嵌入式數(shù)據(jù)庫(kù),支持的數(shù)據(jù)庫(kù)大小為2TB。它具有如下特征:1、輕量級(jí)SQLite和CS模式的數(shù)據(jù)庫(kù)軟件不同,它是進(jìn)程內(nèi)的數(shù)據(jù)庫(kù)引擎,因此不存在數(shù)據(jù)庫(kù)的客戶端和服務(wù)器。使用SQLite一般只需要帶上它的一個(gè)動(dòng)態(tài)庫(kù),就可以享受它的全部功能。而且那個(gè)動(dòng)態(tài)庫(kù)的尺寸也相當(dāng)小。2、獨(dú)立性SQLite數(shù)據(jù)庫(kù)的核心引擎本身不依賴第三方軟

28、件,使用它也不需要“安裝”,所以在使用的時(shí)候能夠省去不少麻煩。3、隔離性SQLite數(shù)據(jù)庫(kù)中的所有信息(比如表、視圖、觸發(fā)器)都包含在一個(gè)文件內(nèi),方便管理和維護(hù)。4、跨平臺(tái)SQLite數(shù)據(jù)庫(kù)支持大部分操作系統(tǒng),除了我們?cè)陔娔X上使用的操作系統(tǒng)之外,很多手機(jī)操作系統(tǒng)同樣可以運(yùn)行,比如Android、Windows Mobile、Symbian、Palm等。5、多語(yǔ)言接口SQLite數(shù)據(jù)庫(kù)支持很多語(yǔ)言編程接口,比如CC+、Java、Python、dotNet、Ruby、Perl等,得到更多開發(fā)者的喜愛。6、安全性SQLite數(shù)據(jù)庫(kù)通過(guò)數(shù)據(jù)庫(kù)級(jí)上的獨(dú)占性和共享鎖來(lái)實(shí)現(xiàn)獨(dú)立事務(wù)處理。這意味著多個(gè)進(jìn)程可以

29、在同一時(shí)間從同一數(shù)據(jù)庫(kù)讀取數(shù)據(jù),但只有一個(gè)可以寫入數(shù)據(jù)。在某個(gè)進(jìn)程或線程向數(shù)據(jù)庫(kù)執(zhí)行寫操作之前,必須獲得獨(dú)占鎖定。在發(fā)出獨(dú)占鎖定后,其他的讀或?qū)懖僮鲗⒉粫?huì)再發(fā)生。2.2.4 開發(fā)工具Eclipse簡(jiǎn)介 Eclipse 是一個(gè)開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺(tái)。作為一種開源軟件,其發(fā)展得到了全世界軟件開發(fā)廠商和技術(shù)愛好者的支持,其版本一直都在不斷的升級(jí)之中,各種開發(fā)功能也在被不斷的整合到Eclipse之上。而且,許多軟件開發(fā)商都是在以Eclipse為框架開發(fā)自己的IDE,如比較流行的IDE Apatna。但Eclipse 不限于當(dāng)作 Java IDE 來(lái)使用。由于 Eclipse 中

30、的每樣?xùn)|西都是插件,對(duì)于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場(chǎng)所。Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得Eclipse擁有其他功能相對(duì)固定的IDE軟件很難具有的靈活性。 作為一種流行的開源軟件,其設(shè)計(jì)的初衷便是高效的開發(fā)出Java程序。在其實(shí)現(xiàn)中同樣高效的支持Java Web項(xiàng)目的開發(fā),能夠完成Web項(xiàng)目工程的自動(dòng)構(gòu)建,部署和開發(fā)。其強(qiáng)大的語(yǔ)言提示功能和代碼分類顯示功能,極大的提高了

31、軟件開發(fā)人員的程序開發(fā)效率。3.需求分析3.1 設(shè)計(jì)思想第一步就是需要利用SQLite建立所需要的數(shù)據(jù)庫(kù),第二步就使用Java語(yǔ)言該系統(tǒng)客戶端應(yīng)用程序的開發(fā)。3.2 可行性分析可行性分析是系統(tǒng)分析階段的第二項(xiàng)活動(dòng),它的主要目是進(jìn)一步明確系統(tǒng)的目標(biāo)、規(guī)模與功能,對(duì)系統(tǒng)開發(fā)背景、必要性和意義進(jìn)行了調(diào)查分析并根據(jù)需要和可能提出開發(fā)系統(tǒng)的初步方案與計(jì)劃??尚行苑治鍪菍?duì)系統(tǒng)進(jìn)行全面、概要的分析。通過(guò)調(diào)查分析,本系統(tǒng)設(shè)計(jì)主要有以下三個(gè)可行性:3.2.1 操作可行性本系統(tǒng)操作簡(jiǎn)單,易于理解,只需通過(guò)簡(jiǎn)單指導(dǎo),上手較快,運(yùn)行環(huán)境要求低。3.2.2 技術(shù)可行性本課題采用Java語(yǔ)言進(jìn)行開發(fā),提供類、接口和繼承等

32、原語(yǔ),為了簡(jiǎn)單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制。同時(shí)Java語(yǔ)言支持全動(dòng)態(tài)綁定,它的 HYPERLINK /view/1792102.htm t _blank 強(qiáng)類型機(jī)制、異常處理、垃圾的自動(dòng)收集以及安全檢查機(jī)制使其程序具有健壯性。3.2.3 經(jīng)濟(jì)可行性本課題所使用的軟件都為免費(fèi)公開發(fā)行版,不需要購(gòu)買?,F(xiàn)在,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長(zhǎng)足的進(jìn)步。為本次開發(fā)提供了設(shè)備支持,同時(shí)幾乎所有的安卓手機(jī)都可以高效的運(yùn)行使用該理財(cái)系統(tǒng) 。3.3 功能需求按照系統(tǒng)開發(fā)的要求分析,并且通過(guò)對(duì)應(yīng)用者的需求進(jìn)行調(diào)研,要求包括軟件操作簡(jiǎn)單,界面簡(jiǎn)潔大方。3.

33、3.1 基本功能需求通過(guò)系統(tǒng)的分析,可得出該系統(tǒng)的基本功能需求如下:能夠?qū)€(gè)人收入的金額以及來(lái)源進(jìn)行新增、瀏覽、查看以及刪除操作。3.3.2 用戶界面需求系統(tǒng)界面要符合大多數(shù)人的使用習(xí)慣,界面美觀、按鈕得體,使用起來(lái)要方便。4.系統(tǒng)設(shè)計(jì)4.1 總體結(jié)構(gòu)設(shè)計(jì)4.1.1 系統(tǒng)設(shè)計(jì)基礎(chǔ)系統(tǒng)總體設(shè)計(jì)原則是需要充分考慮系統(tǒng)框架的合理構(gòu)建理。其組織結(jié)構(gòu)圖如4-1所示。登陸窗體登陸窗體主窗體主窗體收入管理收入管理瀏覽收入信息新增收入刪除收入信息修改收入信息瀏覽收入信息新增收入刪除收入信息修改收入信息圖4-1系統(tǒng)組織結(jié)構(gòu)圖4.1.2 模塊設(shè)計(jì)本系統(tǒng)是一個(gè)典型的收入管理系統(tǒng),主要目標(biāo)是讓使用它的用戶能很好地管理

34、收入,如新增收入功能、瀏覽收入信息功能、修改收入信息功能、刪除收入信息功能。系統(tǒng)從總體上分為新增收入功能模塊、瀏覽收入信息功能模塊、修改收入信息模塊、刪除收入信息模塊。每個(gè)模塊有自己的作用。下面的各模塊功能流圖就是由各功能之間的關(guān)系而得出的。如下圖4-5所示,用戶添加收入的基本流程,用戶輸入要添加的收入信息,然后系統(tǒng)更新數(shù)據(jù)庫(kù),顯示到信息表上:新增收入新增收入金額來(lái)源數(shù)據(jù)表數(shù)據(jù)庫(kù)圖4-5 用戶添加收入流程瀏覽收入查詢條件數(shù)據(jù)庫(kù)輸出查詢結(jié)果如下圖4-6所示,查詢基本流程,用戶輸入要查詢信息,然后查詢并顯示結(jié)果瀏覽收入查詢條件數(shù)據(jù)庫(kù)輸出查詢結(jié)果圖4-6 查詢表報(bào)流程4.1.3 系統(tǒng)流程系統(tǒng)在執(zhí)行過(guò)

35、程中,按照一定的流程進(jìn)行。如圖4-7所示開始連接數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)輸入金額輸入來(lái)源結(jié)束保存數(shù)據(jù)開始連接數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)輸入金額輸入來(lái)源結(jié)束保存數(shù)據(jù)新增新增收入新增來(lái)源圖4-7 添加新信息流程圖數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)連接NY開始輸入查詢條件是否存在顯示收入信息保存數(shù)據(jù)結(jié)束查看收入流程圖,如圖4-8所示圖4-8 查詢收入流程圖4.2 數(shù)據(jù)庫(kù)設(shè)計(jì)4.2.1 數(shù)據(jù)庫(kù)簡(jiǎn)介在系統(tǒng)設(shè)計(jì)過(guò)程中,數(shù)據(jù)庫(kù)的設(shè)計(jì)是系統(tǒng)的核心和基礎(chǔ),把系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織起來(lái),提供存儲(chǔ)、維護(hù)、檢索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時(shí)、準(zhǔn)確地從數(shù)據(jù)庫(kù)中獲得所需的信息。數(shù)據(jù)庫(kù)是長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)大量的有組織的,可以共享的數(shù)據(jù)的集合,

36、這種數(shù)據(jù)集合具有如下特點(diǎn):盡可能不重復(fù),以最優(yōu)方式為某個(gè)特定組織的多種應(yīng)用服務(wù),其數(shù)據(jù)結(jié)構(gòu)獨(dú)立于使用它的應(yīng)用程序,對(duì)數(shù)據(jù)的增、刪、改和檢索由統(tǒng)一軟件進(jìn)行管理和控制。從發(fā)展的歷史看,數(shù)據(jù)庫(kù)是數(shù)據(jù)管理的高級(jí)階段,它是由文件管理系統(tǒng)發(fā)展起來(lái)的。4.2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)原則在具體數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中,要遵循以下原則:(1)為了增強(qiáng)數(shù)據(jù)庫(kù)程序的可讀性和可維護(hù)性,按照相應(yīng)的命名原則規(guī)范對(duì)數(shù)據(jù)表、變量、存儲(chǔ)過(guò)程、視圖等進(jìn)行規(guī)范化,并對(duì)具體的SQL代碼編寫規(guī)范化。(2)在數(shù)據(jù)表的設(shè)計(jì)中,滿足每個(gè)字段必須盡量小,只能包含一個(gè)數(shù)據(jù)項(xiàng)目、必須完全支持主鍵,而且只支持主鍵,每條記錄必須唯一等。(3)多使用存儲(chǔ)過(guò)程實(shí)現(xiàn)對(duì)數(shù)據(jù)

37、庫(kù)的操作,增加訪問(wèn)效率及軟件程序修改。(4)數(shù)據(jù)的安全性方面主要是確定用戶標(biāo)識(shí)及口令,對(duì)關(guān)系或數(shù)據(jù)庫(kù)設(shè)置封鎖,對(duì)用戶授權(quán)或設(shè)置用戶訪問(wèn)控制表。5 系統(tǒng)實(shí)現(xiàn)5.1 用戶主要功能程序代碼Login.java的部分代碼:Button login, cancel;private DataBaseHelper dh;String name, password;EditText Name, Password;int flag = 1;int mflag = 1;int mflag2 = 1;大類中首先就是生命組件跟變量,android是一個(gè)組件式開發(fā)環(huán)境,以組件修改套接開發(fā)為主;public static

38、 String MD5(String str) MessageDigest md5 = null;try md5 = MessageDigest.getInstance(MD5); catch (Exception e) e.printStackTrace();return ;char charArray = str.toCharArray();byte byteArray = new bytecharArray.length;for (int i = 0; i charArray.length; i+) byteArrayi = (byte) charArrayi;byte md5Bytes

39、 = md5.digest(byteArray);StringBuffer hexValue = new StringBuffer();for (int i = 0; i md5Bytes.length; i+) int val = (int) md5Bytesi) & 0 xff;if (val 16) hexValue.append(0);hexValue.append(Integer.toHexString(val);return hexValue.toString();MD5算法加密,用于對(duì)用戶名密碼加密保存。這么做主要是因?yàn)閟qlite數(shù)據(jù)庫(kù)本身安全性不高,訪問(wèn)權(quán)限基本等于沒(méi)限制。手

40、寫一個(gè)繼承SQLiteOpenHelper的數(shù)據(jù)庫(kù)助手類DataBaseHelper,通過(guò)該類進(jìn)行數(shù)據(jù)庫(kù)連接初始化工作,通過(guò)new出來(lái)的DataBaseHelper對(duì)象進(jìn)行數(shù)據(jù)庫(kù)操作數(shù)據(jù)庫(kù)操作主要代碼:SQLiteDatabase db = dh.getReadableDatabase();String columns = DataBaseHelper.ID, DataBaseHelper.NAME,DataBaseHelper.PASSWORD ;Cursor c = db.query(DataBaseHelper.TABLE_USER, columns, null,null, null,

41、null, null);while (c.moveToNext() c.close();db.close();功能選擇界面的部分代碼:Button btn_new,btn_about,btn_up,btn_help; setContentView(R.layin.main); GridView gridview = (GridView) findViewById(R.id.gridview); gridview.setAdapter(new ImageAdapter(this); gridview.setOnItemClickListener(new OnItemClickListener()

42、 從代碼可見,該界面主要實(shí)現(xiàn)的就是按鈕功能,用來(lái)作為軟件各功能實(shí)現(xiàn)的紐帶;GridView采用一個(gè)自定義的布局填充;(3)記錄中的部分代碼Criteria criteria = new Criteria();/ 對(duì)gps獲取信息方式進(jìn)行設(shè)置criteria.setAccuracy(Criteria.ACCURACY_FINE);/ 精度criteria.setAltitudeRequired(false);/ 是否要高度信息criteria.setBearingRequired(false);/ 是否要方位信息criteria.setgetAllowed(true);/ 是否需要產(chǎn)生費(fèi)用cri

43、teria.setPowerRequirement(Criteria.POWER_LOW);/ 耗電量設(shè)置了首先對(duì)gps模塊進(jìn)行設(shè)置,因?yàn)樵摴δ艿膶?shí)現(xiàn)要啟用gps模塊,獲取定位信息protected void camera() Intent intent = new Intent();intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);picpath = System.currentTimeMillis() + .jpg;Uri uri = Uri.fromFile(new File(/sdcard/ + picpath);intent.putE

44、xtra(MediaStore.EXTRA_OUTPUT, uri);startActivityForResult(intent, REQUESTCODE);調(diào)用系統(tǒng)的照相接口,實(shí)現(xiàn)照片采集功能,并自動(dòng)保存到內(nèi)存卡上邊。Toast.makeText(getApplicationContext(), 已保存完成,Toast.LENGTH_LONG).show();用Toast提示照片保存完成查詢中的部分代碼。 private List find()dh = new DataBaseHelper(this);SQLiteDatabase db = dh.getReadableDatabase();

45、String columns = DataBaseHelper.IN, DataBaseHelper.TIME,DataBaseHelper.PIC,DataBaseHelper.X,DataBaseHelper.Y ;Cursor c = db.query(DataBaseHelper.TABLE_USER_IN, columns, null, null,null, null, null);List users = new ArrayList();Manager e = null;while (c.moveToNext() e = new Manager();e.setIn(c.getDou

46、ble(0);e.setTime(c.getString(1);e.setPic(c.getString(2);e.setX(c.getDouble(3);e.setY(c.getDouble(4);users.add(e);c.close();db.close();return users;查詢方法,查詢返回一個(gè)list集合,包含數(shù)據(jù)庫(kù)表內(nèi)的全部數(shù)據(jù)信息新用戶的部分代碼:if (userpassword.equals(testpassword) SQLiteDatabase db = dh.getWritableDatabase();User user = new User(MD5(user

47、Name.getText().toString(),MD5(userpassword);ContentValues values = new ContentValues();values.put(DataBaseHelper.NAME, user.getName();values.put(DataBaseHelper.PASSWORD, user.getPassWord();db.insert(DataBaseHelper.TABLE_USER, null, values);db.close();Toast.makeText(NewUser.this, 數(shù)據(jù)插入成功,Toast.LENGTH_LONG).show(); else Toast.makeText(NewUser.this, 數(shù)據(jù)未插入成功,Toast.LENGTH_LONG).show(); else Toast.makeText(NewUser.this, 兩次輸入的密碼不一致,請(qǐng)重新輸入,Toast.LENGTH_L

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論