2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩56頁(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、<p>  基于Android平臺(tái)的個(gè)人日歷的設(shè)計(jì)與開發(fā)</p><p><b>  摘要</b></p><p>  個(gè)人日歷是基于Android平臺(tái)開發(fā)的,運(yùn)行在Android手機(jī)平臺(tái)的個(gè)人日程管理軟件。本文是對(duì)基于Android平臺(tái)的個(gè)人日歷的設(shè)計(jì)與開發(fā)。</p><p>  首先,本文介紹了軟件開發(fā)的背景與特點(diǎn)。然后,本文介紹

2、了軟件所使用的關(guān)鍵技術(shù),包括Android、fragment、service、activity。再然后,介紹日歷的設(shè)計(jì)與開發(fā),包括系統(tǒng)需求分析、功能設(shè)計(jì)、框架設(shè)計(jì)、界面設(shè)計(jì)、數(shù)據(jù)層設(shè)計(jì)以及各部分功能的實(shí)現(xiàn)。最后本文對(duì)全文進(jìn)行總結(jié),總結(jié)設(shè)計(jì)實(shí)現(xiàn)過(guò)程中遇到的問(wèn)題、系統(tǒng)的不足、優(yōu)勢(shì)與自己的收獲。</p><p>  關(guān)鍵詞:個(gè)人日歷、Android、日程管理</p><p>  The desi

3、gnationand development of personal calendar based on the Android platform</p><p><b>  Abstract</b></p><p>  Personal calendar is a personal schedule management software developed on

4、the Android platform, running on the Android platform. This paper is to design and develop of personal calendar based on the Android platform.</p><p>  First, this paper introduces the background and charact

5、eristics of software development. Then, this paper introduces the key technologies of software use, including Android, fragments, service, activity. Then, introduces the design and development of calendar, including syst

6、em requirements analysis, functional design, framework design, interface design, the data layer design and the realization of the function of each part. Finally this paper summarizes the full text, summarizes the problem

7、s in </p><p>  Keyword: Personal calendar, Android, schedule management</p><p><b>  緒論</b></p><p><b>  課題背景</b></p><p>  在現(xiàn)代的生活中,人們每天要處理的事務(wù)越來(lái)越多。

8、如何有效的管理自己每天的日程安排,已經(jīng)變得越來(lái)越重要。[1]尤其在團(tuán)隊(duì)工作中,更需要相互協(xié)調(diào)以提高整體效率。[2] 在生活中中重要事件多半以電話、短信、郵件的方式發(fā)送,</p><p>  手機(jī)中的通訊錄、短信以及其余重要數(shù)據(jù)的丟失,影響恐怕就難以估量了,由于那意味著會(huì)丟掉一些重要的短信。[3] 因此日程管理軟件,一直深受人們的喜愛 。但是 ,傳統(tǒng)的日歷工具設(shè)計(jì)和功能千篇一律,僅能管理自己的日程。</p&

9、gt;<p>  本軟件可以定時(shí)或?qū)崟r(shí)從后臺(tái)數(shù)據(jù)庫(kù)中通過(guò)Web Services下載與個(gè)人有關(guān)的日歷信息,并能夠根據(jù)設(shè)定的提醒方式和提醒時(shí)間自動(dòng)提醒用戶注意相關(guān)日程安排。</p><p><b>  研發(fā)現(xiàn)狀</b></p><p>  國(guó)內(nèi)外Android軟件現(xiàn)狀</p><p>  Android平臺(tái)是Google公司推出的基

10、于Linux系統(tǒng)一款移動(dòng)操作平臺(tái)。雖然只推出沒有幾年但發(fā)展迅速,尤其在國(guó)外Android更是呼聲很高,占據(jù)了相當(dāng)大的市場(chǎng)份額。中國(guó)是最大的消費(fèi)大國(guó),由于3G網(wǎng)絡(luò)的推廣更加推動(dòng)了智能手機(jī)的發(fā)展,這幾年個(gè)打手機(jī)場(chǎng)上都對(duì)Android工程師需求量很大。未來(lái)幾年Android發(fā)展會(huì)更為迅猛,它將不再只是個(gè)手機(jī)平臺(tái),他將進(jìn)入平板、電視、車載系統(tǒng)等。</p><p><b>  日歷軟件發(fā)展現(xiàn)狀</b>

11、</p><p>  目前許多日歷軟件,他們可以實(shí)現(xiàn)各種各樣的功能,如今日運(yùn)勢(shì)、紀(jì)錄日程、黃歷、吉日查詢、法定節(jié)假日查詢、生理周期日歷、星座查詢、生肖查詢、陰陽(yáng)轉(zhuǎn)換等。外表也更加美觀,各式各樣的更能滿足人們對(duì)日歷軟件的需要。有些還提供各種美觀的小插件,是日歷使用更加方便美觀。不過(guò)這些軟件均僅能管理個(gè)人日程,不能獲得其他管理軟件的日程。</p><p><b>  軟件研究意義&l

12、t;/b></p><p>  Android平臺(tái)是Google公司推出的基于Linux系統(tǒng)一款移動(dòng)操作平臺(tái)。該平臺(tái)具有開放性、不受運(yùn)營(yíng)商束縛、有豐富的硬件選擇、不受限制的開發(fā)和與谷歌應(yīng)用可以無(wú)縫結(jié)合等優(yōu)勢(shì),現(xiàn)在已漸成為主流的智能手機(jī)平臺(tái)。鑒于Android平臺(tái)仍是一個(gè)較新的開發(fā)平臺(tái),仍有很大的發(fā)展空間,國(guó)內(nèi)外很多運(yùn)營(yíng)商和軟件公司都急需該平臺(tái)的開發(fā)人員。通過(guò)本次畢業(yè)設(shè)計(jì)可以很好的鍛煉學(xué)生實(shí)踐能力,同時(shí)也為學(xué)

13、生就業(yè)創(chuàng)造條件。</p><p><b>  研究?jī)?nèi)容與方法</b></p><p><b>  研究?jī)?nèi)容</b></p><p>  個(gè)人日歷后臺(tái)軟件系統(tǒng)主要實(shí)現(xiàn)用戶個(gè)人日歷和企業(yè)日歷數(shù)據(jù)的存儲(chǔ)、手機(jī)日歷端、PC日歷端與后臺(tái)系統(tǒng)日歷項(xiàng)的同步、OA及項(xiàng)目管理等系統(tǒng)與日歷系統(tǒng)的接口等功能。通過(guò)后臺(tái)系統(tǒng),用戶可以隨時(shí)將手機(jī)中的

14、日歷信息保存到后臺(tái)數(shù)據(jù)庫(kù)中,也可以隨時(shí)同步后臺(tái)數(shù)據(jù)庫(kù)中與自身相關(guān)的日歷信息;OA及項(xiàng)目管理系統(tǒng)中的日程安排也能夠自動(dòng)同步到后臺(tái)系統(tǒng)和手機(jī)端。</p><p>  手機(jī)日歷客戶端主要實(shí)現(xiàn)企業(yè)日歷信息的月視圖、周視圖、日視圖、日歷列表、新增日歷、節(jié)假日、日歷同步等功能。手機(jī)日歷客戶端軟件可以定時(shí)或?qū)崟r(shí)從后臺(tái)數(shù)據(jù)庫(kù)中通過(guò)Web Services下載與個(gè)人有關(guān)的日歷信息,并能夠根據(jù)設(shè)定的提醒方式和提醒時(shí)間自動(dòng)提醒用戶注意

15、相關(guān)日程安排。用戶也可以在手機(jī)上新建日程或工作安排,并將其發(fā)送到服務(wù)器端,然后通過(guò)后臺(tái)管理軟件自動(dòng)同步到相關(guān)人員的手機(jī)上,實(shí)現(xiàn)工作安排的自動(dòng)通知和自動(dòng)提醒。</p><p><b>  研究方法</b></p><p>  本系統(tǒng)用軟件工程化思想和方法開發(fā)軟件,對(duì)軟件進(jìn)行了軟件計(jì)劃、需求分析、設(shè)計(jì)和實(shí)現(xiàn)。</p><p><b>  

16、需求分析</b></p><p>  根據(jù)實(shí)際情況獲得需求信息并進(jìn)行總結(jié),提出軟件的功能。</p><p><b>  軟件設(shè)計(jì)</b></p><p>  根據(jù)需求分析進(jìn)行框架設(shè)計(jì)、界面設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)。</p><p><b>  軟件實(shí)現(xiàn)</b></p><p&

17、gt;  根據(jù)設(shè)計(jì)文檔實(shí)現(xiàn)軟件。</p><p><b>  相關(guān)技術(shù)與知識(shí)</b></p><p>  開發(fā)平臺(tái)Android</p><p>  Android是一個(gè)基于Linux的操作系統(tǒng)。自推出以來(lái)Android平臺(tái)迅猛發(fā)展,占據(jù)了巨大的市場(chǎng)份額,而且發(fā)展速度越來(lái)越快。目前Android手機(jī)銷量約占全球三分之一,成為世界上最大的Andr

18、oid手機(jī)市場(chǎng)。</p><p>  Android的開發(fā)語(yǔ)言是Java。從全球來(lái)看從事Java編程的人數(shù)一直占據(jù)著第一的位置。而iPhone應(yīng)用的開發(fā)語(yǔ)言是Object C,從事Object C編程的人才剛剛步入前十。并且Android上手容易,經(jīng)過(guò)幾個(gè)月的培訓(xùn)即可掌握安卓的開發(fā)技巧,并且安卓手機(jī)較為便宜,平臺(tái)免費(fèi)。</p><p>  在中國(guó)Android擁有很好的學(xué)習(xí)環(huán)境和許多開發(fā)社

19、區(qū),其中一些驚顫舉辦安卓開發(fā)者活動(dòng),一起交流技術(shù)和經(jīng)驗(yàn),并且免費(fèi)發(fā)放學(xué)習(xí)資料更課題了解到做什么養(yǎng)的安卓應(yīng)用可以賺錢,是開發(fā)者不在迷茫。。</p><p><b>  MVC開發(fā)模式</b></p><p>  Android應(yīng)用是基于模型控制器視圖(Model-View-Controller,簡(jiǎn)稱MVC)的架構(gòu)模式進(jìn)行設(shè)計(jì)的。 在MVC設(shè)計(jì)模式中,應(yīng)用的任何對(duì)象歸根結(jié)

20、底都是模型對(duì)象、視圖對(duì)象以及控制對(duì)象中的一種。</p><p>  模型對(duì)象存儲(chǔ)著應(yīng)用的數(shù)據(jù)和業(yè)務(wù)邏輯。模型類通常被用來(lái)映射與應(yīng)用相關(guān)的一些事物。模型對(duì)象不關(guān)心用戶界面,它存在的唯一目的就是存儲(chǔ)和管理應(yīng)用數(shù)據(jù)。</p><p>  視圖對(duì)象需要知道如何繪制界面、如何處理用戶和界面的互動(dòng)。以往的經(jīng)驗(yàn)法則表明,只要是屏幕上可以看得的就是視圖對(duì)象。</p><p>  控

21、制對(duì)象包含了應(yīng)用的邏輯單元,是聯(lián)系視圖與模型對(duì)象的紐帶??刂茖?duì)象被設(shè)計(jì)用來(lái)響應(yīng)由視圖對(duì)象觸發(fā)的各類事件,此外還用來(lái)管理模型對(duì)象與視圖層間的數(shù)據(jù)流動(dòng)。</p><p>  局部界面fragment</p><p>  自從Android3.0引入fragment概念之后,fragment被解釋為碎片或者片段。一個(gè)fragment是用戶界面的一個(gè)區(qū)域,可以再一個(gè)Activity中使用多個(gè)fra

22、gment來(lái)組合成一個(gè)多面板界面,也可以在不同的Activity中利用同一個(gè)fragment??梢园裦ragment理解為一個(gè)模塊化部分,他有自己的生命周期、可以獨(dú)立的接受用戶的操作,并可以在Activity運(yùn)行過(guò)程中添加或刪除一個(gè)fragment。</p><p>  管理用戶界面的fragment又稱為UI fragment。它也可以自己產(chǎn)生布局文件。 fragment視圖包含了用戶會(huì)用到的一些的可視化UI元

23、素。</p><p>  Web service</p><p>  Web service是一個(gè)平臺(tái)獨(dú)立的,低耦合的,自包含的、基于可編程的web的應(yīng)用程序,可使用開放的XML標(biāo)準(zhǔn)來(lái)描述、發(fā)布、發(fā)現(xiàn)、協(xié)調(diào)和配置這些應(yīng)用程序,用于開發(fā)分布式操作的應(yīng)用程序。[1] </p><p>  Web Service技術(shù), 能使得運(yùn)行在不同平臺(tái)上的不同應(yīng)用不用借助第三方軟件或

24、硬件就可相互交換數(shù)據(jù)。更具Web Service規(guī)范發(fā)布的應(yīng)用之間, 不管他們是用什么語(yǔ)言開發(fā)的、運(yùn)行在什么平臺(tái)上的都能相互交換數(shù)據(jù)。Web Service減少了應(yīng)用接口的花費(fèi)。</p><p>  Localservice</p><p>  Service是安卓四大組件之一,它是可以長(zhǎng)時(shí)間在后臺(tái)運(yùn)行并且需要提供用戶接口的應(yīng)用組件。在啟動(dòng)一個(gè)應(yīng)用的服務(wù)后即使在啟動(dòng)其他的應(yīng)用之前的服務(wù)依舊

25、會(huì)運(yùn)行。并且其他非service組件也可以與service綁定并進(jìn)行交互,甚至允許多線程交互。本地服務(wù)不是獨(dú)立的進(jìn)程,它依附在主進(jìn)程上這樣可以節(jié)省資源。</p><p>  Service有兩種形式:</p><p>  啟動(dòng)形式:通過(guò)調(diào)用startService()方法啟動(dòng)服務(wù),通過(guò)這種方式啟動(dòng)的service即使啟動(dòng)它的Activity已經(jīng)被銷毀它也會(huì)一直在后臺(tái)運(yùn)行。但是它只能執(zhí)行單一

26、的操作不能返回結(jié)果給調(diào)用者。通過(guò)調(diào)用stopService()來(lái)停止服務(wù)。</p><p>  綁定形式:通過(guò)調(diào)用bindService()方法啟動(dòng)服務(wù),通過(guò)這種方式啟動(dòng)的服務(wù)會(huì)為它所綁定的組件一個(gè)交互接口,通過(guò)這個(gè)接口應(yīng)用組件可以與service交互、請(qǐng)求結(jié)果、甚至跨進(jìn)程通信。但是當(dāng)組件被銷毀后service也就銷毀了。通過(guò)調(diào)用unbindService()停止服務(wù)。</p><p>&

27、lt;b>  SQLite數(shù)據(jù)庫(kù)</b></p><p>  SQlite是一種輕量級(jí)的、功能強(qiáng)大關(guān)系數(shù)據(jù)庫(kù),它用于完成實(shí)現(xiàn)結(jié)構(gòu)化的數(shù)據(jù)存儲(chǔ)和各種復(fù)雜的數(shù)據(jù)處理。</p><p>  SQlite數(shù)據(jù)庫(kù)支持多數(shù)的SQL92標(biāo)準(zhǔn),最大支持?jǐn)?shù)據(jù)到2TB。他沒有服務(wù)進(jìn)程,但是它所包含的數(shù)據(jù)庫(kù)、表等所有數(shù)據(jù)已經(jīng)被放入Android系統(tǒng)平臺(tái)的底層庫(kù)文件,因此我們可以直接通過(guò)相關(guān)的A

28、PI來(lái)調(diào)用,從而實(shí)現(xiàn)數(shù)據(jù)庫(kù)的各種功能。</p><p><b>  線程</b></p><p>  線程是進(jìn)程內(nèi)部執(zhí)行代碼的實(shí)體,他是CPU調(diào)度資源的最小單元,他沒有自己獨(dú)立的資源,他只有自己的執(zhí)行堆棧和局部變量,所以線程不能獨(dú)立執(zhí)行不許依附在一個(gè)進(jìn)程上。</p><p>  Thread:重寫其run()方法,在其中實(shí)現(xiàn)我們需要線程所要完成

29、的任務(wù)。在Activity中實(shí)例化并通過(guò)start()運(yùn)行線程。在線程運(yùn)行過(guò)程中如果需要更新UI可通過(guò)handler發(fā)消息給主線程。</p><p>  AsyncTask:他是一種簡(jiǎn)單實(shí)現(xiàn)后臺(tái)運(yùn)行事物的方式。他的任務(wù)在UI縣城之外運(yùn)行,而回調(diào)方法是在UI線程中執(zhí)行,這樣就可以有效的避免了使用Handler所帶來(lái)的麻煩。AsyncTask是一個(gè)抽象類,要使用它必須繼承這個(gè)類并重寫其中的方法。</p>

30、<p><b>  開發(fā)平臺(tái)介紹</b></p><p><b>  開發(fā)工具</b></p><p>  Eclipse,adt,Visual Studio2010,SQL Server 2008</p><p><b>  開發(fā)語(yǔ)言</b></p><p>&l

31、t;b>  Java,C#</b></p><p><b>  測(cè)試平臺(tái)</b></p><p>  Android手機(jī),Win7</p><p><b>  個(gè)人日歷的設(shè)計(jì)</b></p><p><b>  需求分析</b></p><

32、p><b>  對(duì)功能的規(guī)定</b></p><p>  本軟件要求將辦公自動(dòng)化平臺(tái)(OA)系統(tǒng)中涉及日程的項(xiàng)目推送到手機(jī)終端軟件中。其基本的數(shù)據(jù)相關(guān)流程如圖3-1-1所示。</p><p>  圖 3-1-1 日歷系統(tǒng)結(jié)構(gòu)圖</p><p>  其中“手機(jī)日歷”模塊完成在手機(jī)終端(Android平臺(tái))中的顯示日歷、新建日歷等功能,并提供

33、手動(dòng)/定時(shí)與中心數(shù)據(jù)庫(kù)同步日歷的功能。</p><p>  中心數(shù)據(jù)庫(kù)模塊完成從OA系統(tǒng)、項(xiàng)目管理系統(tǒng)中抽取與日期相關(guān)的日程項(xiàng),并整理為標(biāo)準(zhǔn)的日歷格式后向手機(jī)端推送日歷,要求使用Web服務(wù)的形式提供接口。</p><p><b>  對(duì)性能的規(guī)定</b></p><p><b>  精度</b></p>&l

34、t;p>  時(shí)間戳精確到1毫秒;</p><p>  周視圖、日視圖日程項(xiàng)的時(shí)間精度為15分鐘。</p><p>  提前提醒的時(shí)間精度為1分鐘,即不支持小于1分鐘的時(shí)間提醒;</p><p><b>  時(shí)間特性要求</b></p><p>  手機(jī)向中心服務(wù)器讀寫數(shù)據(jù)網(wǎng)絡(luò)超時(shí)響應(yīng)時(shí)間:10秒,若超過(guò)10秒沒有取

35、回?cái)?shù)據(jù)則退出;</p><p>  手機(jī)端本地?cái)?shù)據(jù)庫(kù)查詢超時(shí):3秒;</p><p>  面之間切換延時(shí):不超過(guò)2秒;</p><p><b>  靈活性</b></p><p>  本軟件系統(tǒng)前臺(tái)手機(jī)端與后臺(tái)服務(wù)器端采用Web服務(wù)方式通信,可以減少防火墻的配置工作以及具有良好的可擴(kuò)充性。</p><

36、p>  手機(jī)端軟件與后臺(tái)系統(tǒng)之間通過(guò)Web Services進(jìn)行通信,只要接口信息不發(fā)生改變,手機(jī)端界面和功能的變化不影響后臺(tái)系統(tǒng)的開發(fā)和使用。</p><p><b>  輸入輸出要求</b></p><p>  后臺(tái)服務(wù)器端提供的Web服務(wù)的參數(shù)類型包括字符串和整型兩類,結(jié)果以自定義類對(duì)象列表的形式返回。</p><p><b&

37、gt;  數(shù)據(jù)管理能力要求</b></p><p>  中心數(shù)據(jù)庫(kù)采用SQL Server2008數(shù)據(jù)庫(kù),有很強(qiáng)的數(shù)據(jù)存儲(chǔ)和管理能力,完全能夠勝任個(gè)人日歷系統(tǒng)的數(shù)據(jù)要求。另外,Web服務(wù)發(fā)布在IIS上,其并發(fā)訪問(wèn)由IIS負(fù)責(zé),多人同時(shí)進(jìn)行同步不存在問(wèn)題。</p><p><b>  故障處理要求</b></p><p>  本系統(tǒng)可

38、能在下列情況下出現(xiàn)故障,待相關(guān)問(wèn)題解決后,本系統(tǒng)能夠重新正常運(yùn)行:</p><p>  用戶手機(jī)不能正常聯(lián)網(wǎng)時(shí),會(huì)影響到日歷信息上傳和同步的實(shí)時(shí)性;</p><p>  安裝中心數(shù)據(jù)庫(kù)的計(jì)算機(jī)出現(xiàn)故障或網(wǎng)絡(luò)連接不暢時(shí),會(huì)影響系統(tǒng)的穩(wěn)定運(yùn)行;</p><p><b>  運(yùn)行環(huán)境規(guī)定</b></p><p><b&g

39、t;  設(shè)備</b></p><p>  設(shè)備需求情況將分別從前臺(tái)手機(jī)端和后臺(tái)服務(wù)端說(shuō)明:</p><p>  Android設(shè)備運(yùn)行要求:</p><p>  支持Android2.2平臺(tái)及以上,運(yùn)行內(nèi)存大于512M,系統(tǒng)存儲(chǔ)空間大于128M(用于存數(shù)據(jù)庫(kù)),屏幕分辨率大于800*400,具備聯(lián)網(wǎng)功能的手機(jī)。</p><p>&

40、lt;b>  服務(wù)器運(yùn)行要求:</b></p><p>  需要一臺(tái)性能較好的服務(wù)器(操作系統(tǒng)Windows 2003 Server,內(nèi)存4G、硬盤512G、雙網(wǎng)卡),安裝數(shù)據(jù)庫(kù)服務(wù)器和IIS服務(wù)器,其上運(yùn)行后臺(tái)同步程序和Web服務(wù)。</p><p><b>  支持軟件</b></p><p>  服務(wù)器端開發(fā)所用到的支持軟

41、件包括:</p><p>  Windows 2003 Server</p><p>  Microsoft SQL Server2008</p><p><b>  功能設(shè)計(jì)</b></p><p><b>  總體框架設(shè)計(jì)</b></p><p>  個(gè)人日歷系統(tǒng)包含手機(jī)

42、端(Android)和服務(wù)器端兩部分組成。</p><p>  系統(tǒng)的總體結(jié)構(gòu)圖如下圖所示:</p><p>  信息系統(tǒng)的內(nèi)網(wǎng)通過(guò)SOA應(yīng)用服務(wù)器的80端口連接到InterNet網(wǎng),再通過(guò)無(wú)線加密通信將信息送到Android手機(jī)上。</p><p>  SOA是一種面向服務(wù)的軟件架構(gòu),是當(dāng)前先進(jìn)的軟件結(jié)構(gòu)。SOA對(duì)外以80為服務(wù)端口,易于配置防火墻。SOA架構(gòu)借用

43、現(xiàn)有的HTTP應(yīng)用服務(wù)器的并發(fā)控制,可靠、安全。</p><p>  用一覽表及框圖的形式說(shuō)明本系統(tǒng)的系統(tǒng)元素(各層模塊、子程序、公用程序等)的劃分,扼要說(shuō)明每個(gè)系統(tǒng)元素的標(biāo)識(shí)符和功能,分層次地給出各元素之間的控制與被控制關(guān)系.</p><p>  Android端手機(jī)軟件的程序結(jié)構(gòu)圖為:</p><p>  Android程序由手機(jī)界面顯示程序、手機(jī)服務(wù)程序兩部分

44、組成。手機(jī)主程序完成主日歷視圖、新建日程視圖、日程查看視圖、假期查看視圖;手機(jī)后臺(tái)服務(wù)程序則完成狀態(tài)欄提醒、桌面插件更新、后臺(tái)數(shù)據(jù)更新等功能。</p><p>  手機(jī)主視圖界面由月視圖、周視圖、日視圖、三個(gè)視圖組成。這三個(gè)視圖共享一個(gè)Android Activity,當(dāng)用戶切換視圖時(shí)動(dòng)態(tài)生成視圖單元格。</p><p><b>  日歷信息獲取過(guò)程:</b><

45、/p><p>  分析現(xiàn)有的信息服務(wù)系統(tǒng),找到工作項(xiàng)子系統(tǒng);</p><p>  分析工作項(xiàng)子系統(tǒng)的數(shù)據(jù)庫(kù),設(shè)計(jì)查詢?nèi)諝v項(xiàng)的存儲(chǔ)過(guò)程(SQL編寫);</p><p>  將存儲(chǔ)過(guò)程映射為WebService(C#或者Java編寫);</p><p>  將Web服務(wù)部署在應(yīng)用服務(wù)器上(IIS或者Tomcat);</p><p&

46、gt;  移動(dòng)設(shè)備通過(guò)Web服務(wù)讀寫日歷信息。</p><p><b>  功能列表</b></p><p><b>  導(dǎo)航欄設(shè)計(jì)</b></p><p>  導(dǎo)航欄由8個(gè)圓形按鈕構(gòu)成,他們的功能分別為查看月視圖、查看周視圖、查看日視圖、將日期跳到今天、查看假期、添加日程、同步日程。</p><p&g

47、t;<b>  月視圖設(shè)計(jì)</b></p><p>  該視圖在整個(gè)屏幕上提供整月的信息查看,并且可左右滑動(dòng)顯示上一月和下一月的日期信息,該視圖的最小操作單位為天,字體隨手機(jī)分辨率自動(dòng)設(shè)定。</p><p>  月視圖分為三部分:頭部日期標(biāo)識(shí)、月主視圖、日程列表。</p><p>  頭部日期標(biāo)識(shí)分為兩部分:日期顯示、農(nóng)歷陽(yáng)歷轉(zhuǎn)換</p&

48、gt;<p>  月主視圖:上方為周一至周日導(dǎo)航;下方顯示一個(gè)月的日單元格,日單元格可以顯示公歷和可選顯示農(nóng)歷,單元格有日程項(xiàng)則顯示一個(gè)標(biāo)記,單擊日單元格顯示當(dāng)日日程項(xiàng),雙擊或者長(zhǎng)按日單元格可以在當(dāng)日新建一個(gè)日程項(xiàng)。用戶可以根據(jù)日單元格的不同來(lái)判斷是否為今天(有圓圈)、假期(藍(lán)色)、所選中的日期(綠色)、是否有日程安排(右上方紅色三角)、非本月(灰色)。</p><p>  日程列表:顯示所點(diǎn)擊日期

49、的日程信息(主題、時(shí)間、地點(diǎn)、是否完成),并支持上下滑動(dòng)查看日程,點(diǎn)擊可產(chǎn)看詳細(xì)信息。</p><p><b>  周視圖設(shè)計(jì)</b></p><p>  該視圖提供整周日程的查看功能,并且可左右滑動(dòng)顯示上一周和下一周的日期信息,字體隨手機(jī)分辨率自動(dòng)設(shè)定。</p><p>  周視圖分為兩部分頭部日期標(biāo)識(shí)、周主視圖。</p>&l

50、t;p>  頭部日期標(biāo)識(shí)分為兩部分:日期顯示、農(nóng)歷陽(yáng)歷轉(zhuǎn)換</p><p>  周主視圖:上方為周一到周日導(dǎo)航,點(diǎn)擊可跳轉(zhuǎn)到顯示那天的日視圖;下方顯示一周七天、每天24小時(shí)的日程信息和當(dāng)日的全天日程。單擊小時(shí)單元格可查看當(dāng)時(shí)日程,雙擊或者長(zhǎng)按小時(shí)單元格可新建一個(gè)日程項(xiàng)。</p><p><b>  日視圖設(shè)計(jì)</b></p><p>  

51、該視圖提供一天的日程查看功能,并且可左右滑動(dòng)顯示上一周和下一周的日期信息,字體隨手機(jī)分辨率自動(dòng)設(shè)定。</p><p>  日視圖分為兩部分:日期標(biāo)識(shí)、日主視圖。</p><p>  頭部日期標(biāo)識(shí)分為兩部分:日期顯示、農(nóng)歷陽(yáng)歷轉(zhuǎn)換</p><p>  日主視圖:顯示一天的全天任務(wù)、每天24小時(shí)的日程信息,單擊小時(shí)單元格可查看當(dāng)時(shí)日程,雙擊或者長(zhǎng)按小時(shí)單元格可新建一個(gè)日

52、程項(xiàng)。不同緊急程度的任務(wù)使用不同的背景顏色。日程項(xiàng)顯示主題、地點(diǎn)。每小時(shí)的任務(wù)太多,單元格太小、則盡量顯示更多的文字。</p><p><b>  列表視圖設(shè)計(jì)</b></p><p>  列表視圖提供從今天開始的100條日歷,支持上下滑動(dòng)查看前后的日程項(xiàng)。日程項(xiàng)之間使用日歷時(shí)間欄區(qū)分,日歷時(shí)間欄要求顯示年月日和星期。默認(rèn)顯示從今天開始的100個(gè)日程,并提供主題關(guān)鍵字

53、檢索功能。點(diǎn)擊一個(gè)日程項(xiàng)可產(chǎn)看詳細(xì)信息。</p><p>  新建、查看、修改、刪除日程</p><p>  可以新建一個(gè)日程;查看一個(gè)日程的詳細(xì)信息,修改或者刪除日程。</p><p><b>  假期</b></p><p>  可查看從今天開始的一年的假期。</p><p><b>

54、;  同步功能</b></p><p>  可通過(guò)web srvice同步日程新到本地?cái)?shù)據(jù)庫(kù)。分為手動(dòng)同步和自動(dòng)同步兩種。</p><p><b>  菜單</b></p><p>  設(shè)置:可以設(shè)置Web服務(wù)地址、同步數(shù)據(jù)的頻率、網(wǎng)絡(luò)超時(shí)時(shí)間。個(gè)人的姓名和編號(hào)的注冊(cè)和注銷。</p><p><b>

55、;  退出:退出程序。</b></p><p><b>  桌面插件</b></p><p>  該視圖提供一個(gè)桌面查看,便于用戶快捷查看今天開始的10條日程,點(diǎn)擊后可進(jìn)入本軟件主程序。</p><p><b>  功能銜接</b></p><p>  打開本軟件主程序顯示月視圖,點(diǎn)擊導(dǎo)

56、航欄的“月”按鈕可由其他視圖跳轉(zhuǎn)回月視圖;點(diǎn)擊導(dǎo)航欄“周”按鈕可跳轉(zhuǎn)到周視圖;點(diǎn)擊周視圖的星期導(dǎo)航可跳轉(zhuǎn)到日視圖,點(diǎn)擊導(dǎo)航欄“日”按鈕可跳轉(zhuǎn)到日視圖。</p><p>  點(diǎn)擊導(dǎo)航欄“+”按鈕可添加日程,長(zhǎng)按或雙擊月視圖的日單元格、周視圖和日視圖的小時(shí)單元格可添加日程。</p><p>  點(diǎn)擊導(dǎo)航欄“三”按鈕,可進(jìn)入列表視圖,查看今天開始的日程。</p><p>

57、  點(diǎn)擊月視圖的日程列表和列表視圖的日程項(xiàng)可進(jìn)入查看日程詳細(xì)信息界面,在查看頁(yè)面可點(diǎn)擊“刪除”按鈕刪除個(gè)人日歷信息,點(diǎn)擊“修改”按鈕修改日程信息。</p><p><b>  按菜單鍵彈出菜單。</b></p><p><b>  數(shù)據(jù)層設(shè)計(jì)</b></p><p><b>  數(shù)據(jù)庫(kù)設(shè)計(jì)</b>&l

58、t;/p><p>  手機(jī)端sqilite數(shù)據(jù)庫(kù):</p><p>  本系統(tǒng)中,設(shè)計(jì)了表:</p><p>  該表是程序運(yùn)行過(guò)程中常用到的一些變量的配置的存儲(chǔ)。</p><p>  該表用于存儲(chǔ)日程信息,以CalendarId為主鍵,存儲(chǔ)時(shí)按照StartTime、EndTime、ID排序。</p><p>  該表用來(lái)

59、保存更新歷史,用于同步日程信息使用。</p><p>  后臺(tái)服務(wù)數(shù)據(jù)庫(kù)的結(jié)構(gòu):</p><p>  本系統(tǒng)中,設(shè)計(jì)了表:Table_UserManager(人員表)、Table_CalendarManage (日歷表) 、Table_User_CalendarRelation (人員、日歷關(guān)系表)來(lái)存儲(chǔ)日歷系統(tǒng)中涉及到的相關(guān)人員、日歷項(xiàng)及日歷項(xiàng)涉及到的人員等信息。各表的結(jié)構(gòu)定義分別如下:

60、</p><p>  注:表Table_CalendarManage和表Table_User_CalendarRelation之間通過(guò)字段CalendarId來(lái)關(guān)聯(lián),是一對(duì)多的關(guān)系。生成日歷時(shí),先在日歷表Table_CalendarManage中插入日歷信息記錄,然后再在表Table_User_CalendarRelation中生成人員的關(guān)聯(lián)信息。刪除日歷時(shí),先從表Table_User_CalendarRelat

61、ion中刪除有關(guān)記錄,當(dāng)不存在與CanlendarId關(guān)聯(lián)的人員信息時(shí),將日歷記錄從Table_CalendarManage中刪除。</p><p><b>  數(shù)據(jù)緩沖</b></p><p>  月視圖的每個(gè)單元格類中都有一個(gè)ArrayList用于保存當(dāng)天的CalendarItem(日程信息),這樣打開月視圖就把整個(gè)月的日程信息緩沖到了內(nèi)存中。模型層新增一個(gè)Cal

62、endarItemLab對(duì)象,該對(duì)象是一個(gè)數(shù)據(jù)緩沖池用來(lái)存儲(chǔ)CalendarItem。點(diǎn)擊日單元格時(shí)將ArrayList賦值給CalendarItemLab的ArrayList,之后對(duì)CalendarItem的查看均使用CalendarItemLab。</p><p><b>  界面布局設(shè)計(jì)</b></p><p><b>  日視圖</b>&

63、lt;/p><p><b>  桌面插件</b></p><p><b>  個(gè)人日歷的實(shí)現(xiàn)</b></p><p><b>  數(shù)據(jù)層實(shí)現(xiàn)</b></p><p><b>  數(shù)據(jù)庫(kù)實(shí)現(xiàn)</b></p><p><b>  

64、手機(jī)端數(shù)據(jù)庫(kù):</b></p><p>  Android使用ORMLite操作數(shù)據(jù)庫(kù)</p><p>  使用ormlite-android-4.41.jar和ormlite-core-4.41.jar兩個(gè)jar包,將這兩個(gè)包導(dǎo)入到Lib文件夾中。</p><p>  存儲(chǔ)的數(shù)據(jù)對(duì)象實(shí)體。</p><p><b>  

65、代碼如下:</b></p><p>  UpdateHistory 類</p><p>  @DatabaseTable</p><p>  public class UpdateHistory implements Serializable {</p><p><b>  /**</b></p&g

66、t;<p><b>  * UID</b></p><p><b>  */</b></p><p>  private static final long serialVersionUID = 5273337865132837182L;/**</p><p>  * SqlLite自增ID</p&g

67、t;<p><b>  */</b></p><p>  @DatabaseField(generatedId = true)</p><p>  Integer id = 0;</p><p><b>  /**</b></p><p><b>  * 最后同步時(shí)間<

68、/b></p><p><b>  */</b></p><p>  @DatabaseField</p><p>  String updateID = "";</p><p><b>  /**</b></p><p><b>  *

69、最后同步時(shí)間</b></p><p><b>  */</b></p><p>  @DatabaseField</p><p>  String AlterTime = "2000/01/01 00:00:00";</p><p><b>  /**</b><

70、/p><p>  * 界面點(diǎn)擊的日程項(xiàng) ID值</p><p><b>  */</b></p><p>  @DatabaseField</p><p>  String Click_CI_ID = "";</p><p>  //一系列的get set方法</p>

71、<p><b>  //省略</b></p><p><b>  }</b></p><p>  CalendarItem類</p><p><b>  /**</b></p><p>  * 日歷系統(tǒng)中的 日程項(xiàng) 基礎(chǔ)類,包含了日程項(xiàng)所有的數(shù)據(jù)信息和數(shù)據(jù)庫(kù)結(jié)構(gòu),

72、以后可以新增日程項(xiàng)的查詢、匹配等功能 </p><p>  * @author GW </p><p><b>  */</b></p><p>  @DatabaseTable</p><p>  public class CalendarItem implements Serializable {</p>

73、<p><b>  /**</b></p><p><b>  * UID</b></p><p><b>  */</b></p><p>  private static final long serialVersionUID = -7368152766202427185L;<

74、/p><p><b>  }</b></p><p><b>  /**</b></p><p>  * SqlLite 自建ID</p><p><b>  */</b></p><p>  @DatabaseField(generatedId = tru

75、e)</p><p>  Integer id = 0;</p><p><b>  /**</b></p><p>  * 遠(yuǎn)程數(shù)據(jù)庫(kù)中心,日歷ID,主鍵</p><p><b>  */</b></p><p>  @DatabaseField(index = true)

76、</p><p>  String CalendarId = "";</p><p><b>  /**</b></p><p><b>  * 主題</b></p><p><b>  */</b></p><p>  @Datab

77、aseField</p><p>  String Topic = "";</p><p><b>  /**</b></p><p><b>  * 起始時(shí)間</b></p><p><b>  */</b></p><p>  @

78、DatabaseField(index = true)</p><p>  String StartTime = "";</p><p><b>  /**</b></p><p><b>  * 結(jié)束時(shí)間</b></p><p><b>  */</b>&

79、lt;/p><p>  @DatabaseField(index = true)</p><p>  String EndTime = "";</p><p>  //按照設(shè)計(jì)的數(shù)據(jù)庫(kù)表寫,并注釋(此處部分省略)</p><p>  //一系列的set get 方法 省略</p><p><b&g

80、t;  }</b></p><p>  ColorConfig 類</p><p>  @DatabaseTable</p><p>  public class ColorConfig implements Serializable{</p><p><b>  /**</b></p>&

81、lt;p><b>  * UID</b></p><p><b>  */</b></p><p>  private static final long serialVersionUID = 8216762882467739109L;</p><p><b>  /**</b></p&g

82、t;<p>  * 本地?cái)?shù)據(jù)庫(kù)主索引ID</p><p><b>  */</b></p><p>  @DatabaseField(generatedId = true)</p><p>  Integer id = 0;</p><p><b>  /**</b></p>

83、;<p>  * 是否正在使用該配置</p><p><b>  */</b></p><p>  @DatabaseField</p><p>  Integer isUse = 1;</p><p>  @DatabaseField</p><p>  public String

84、 userID = "";</p><p>  @DatabaseField</p><p>  public String userName = "";</p><p>  //按照設(shè)計(jì)的數(shù)據(jù)庫(kù)表寫,并注釋(此處部分省略)</p><p>  //一系列的set get 方法 省略</p>

85、;<p><b>  }</b></p><p>  注:@DatabaseTable 指定類對(duì)應(yīng)的表名,@DatabaseField 對(duì)應(yīng)的字段名,</p><p><b>  字段名注釋方法</b></p><p>  cloumnName:指定字段名,不指定則變量名作為字段名</p>&l

86、t;p>  canBeNull:是否可以為null</p><p>  dataType:指定字段的類型</p><p>  defaultValue:指定默認(rèn)值</p><p>  width:指定長(zhǎng)度</p><p>  id:指定字段為id</p><p>  generatedId:指定字段為自增長(zhǎng)的id

87、,不能id,generatedIdSequence通用</p><p>  foreign 指定這個(gè)字段的對(duì)象是一個(gè)外鍵,外鍵值是這個(gè)對(duì)象的id</p><p>  useGetSet:指定ormlite訪問(wèn)變量使用set,get方法默認(rèn)使用的是反射機(jī)制直接訪問(wèn)變量</p><p>  throwIfNull,如果空值拋出異常</p><p>

88、;  persisted:指定是否持久化此變量,默認(rèn)true</p><p>  unique:字段值唯一</p><p>  uniqueCombo整列的值唯一</p><p><b>  index:索引</b></p><p>  uniqueIndex 唯一索引</p><p>  for

89、eignAutoRefresh 外鍵值,自動(dòng)刷新</p><p>  foreignAutoCreate 外鍵不存在時(shí)是否自動(dòng)添加到外間表中</p><p>  需要數(shù)據(jù)DatabaseHelper類,來(lái)創(chuàng)建及管理數(shù)據(jù)庫(kù)。 DatabaseHelper類繼承OrmLiteSqliteOpenHelper,并在覆蓋實(shí)現(xiàn)onCreate, onUpgrade, close等方法。創(chuàng)建刪除數(shù)據(jù)庫(kù)

90、應(yīng)該使用TableUtils工具類的方法.。</p><p>  構(gòu)造數(shù)據(jù)訪問(wèn)接口Dao類。</p><p><b>  代碼如下:</b></p><p>  public class DatabaseHelper extends</p><p>  com.j256.ormlite.android.apptools.

91、OrmLiteSqliteOpenHelper {</p><p><b>  //數(shù)據(jù)庫(kù)名字</b></p><p>  private static final String DATABASE_NAME = "KD.db";</p><p><b>  /**</b></p><

92、p>  * 當(dāng)數(shù)據(jù)庫(kù)表結(jié)構(gòu)修改時(shí),增加該數(shù)值即可。</p><p><b>  * 數(shù)據(jù)庫(kù)版本號(hào)</b></p><p><b>  */</b></p><p>  private static final int DATABASE_VERSION = 47;</p><p>  priv

93、ate Dao<CalendarItem, Integer> calItemDao;</p><p>  private Dao<ColorConfig, Integer> configDao;</p><p>  private Dao <UpdateHistory, Integer> updateDao;</p><p>  

94、public DatabaseHelper(Context context) {</p><p>  super(context, DATABASE_NAME, null, DATABASE_VERSION,</p><p>  R.raw.ormlite_config);</p><p><b>  }</b></p><

95、p>  //創(chuàng)建數(shù)據(jù)庫(kù)時(shí)調(diào)用 onCreats方法</p><p><b>  @Override</b></p><p>  public void onCreate(SQLiteDatabase arg0, ConnectionSource arg1) {</p><p>  // TODO Auto-generated method

96、 stub</p><p><b>  try {</b></p><p>  TableUtils.createTable(connectionSource, CalendarItem.class);</p><p>  TableUtils.createTable(connectionSource, ColorConfig.class);&

97、lt;/p><p>  TableUtils.createTable(connectionSource, UpdateHistory.class);</p><p>  } catch (SQLException e) {</p><p>  Log.e(DatabaseHelper.class.getName(), "Unable to create dat

98、bases",e);</p><p><b>  }</b></p><p><b>  }</b></p><p>  //數(shù)據(jù)庫(kù)版本號(hào)變化時(shí)調(diào)用 onUpgrade 方法</p><p><b>  @Override</b></p><p&g

99、t;  public void onUpgrade(SQLiteDatabase sqliteDatabase,</p><p>  ConnectionSource connectionSource, int oldVer, int newVer) {</p><p>  // TODO Auto-generated method stub</p><p><

100、;b>  try {</b></p><p>  TableUtils.dropTable(connectionSource, CalendarItem.class, true);</p><p>  TableUtils.dropTable(connectionSource, ColorConfig.class, true);</p><p> 

101、 TableUtils.dropTable(connectionSource, UpdateHistory.class, true);</p><p>  onCreate(sqliteDatabase, connectionSource);</p><p>  } catch (SQLException e) {</p><p>  Log.e(DatabaseH

102、elper.class.getName(),</p><p>  "Unable to upgrade database from version " + oldVer+ " to new " + newVer, e);</p><p><b>  }</b></p><p><b>  }&l

103、t;/b></p><p><b>  /**</b></p><p>  * 獲取用戶信息接口DAO</p><p><b>  * @return</b></p><p>  * @throws SQLException</p><p><b>  */&

104、lt;/b></p><p>  public Dao<User, Integer> getUserDao() throws SQLException {</p><p>  if (userDao == null) {</p><p>  userDao = getDao(User.class);</p><p><

105、b>  }</b></p><p>  return userDao;</p><p><b>  }</b></p><p><b>  /**</b></p><p>  * 獲取 日程項(xiàng) 信息接口DAO</p><p><b>  * @re

106、turn</b></p><p>  * @throws SQLException</p><p><b>  */</b></p><p>  public Dao<CalendarItem, Integer> getCalItemDao() throws SQLException {</p><p

107、>  if (calItemDao == null) {</p><p>  calItemDao = getDao(CalendarItem.class);</p><p><b>  }</b></p><p>  return calItemDao;</p><p><b>  }</b>

108、;</p><p><b>  /**</b></p><p>  * 獲取 配置項(xiàng) 的Dao</p><p><b>  * @return</b></p><p>  * @throws SQLException</p><p><b>  */</b&g

109、t;</p><p>  public Dao<ColorConfig, Integer> getConfigDao() throws SQLException {</p><p>  if (configDao == null) {</p><p>  configDao = getDao(ColorConfig.class);</p>

110、<p><b>  }</b></p><p>  return configDao;</p><p><b>  }</b></p><p><b>  /**</b></p><p>  * 返回最后更新的時(shí)間</p><p><b&

111、gt;  * @return</b></p><p>  * @throws SQLException</p><p><b>  */</b></p><p>  public Dao<UpdateHistory, Integer> getUpdateHistoryDao() throws SQLException {

112、</p><p>  if (updateDao == null) {</p><p>  updateDao = getDao(UpdateHistory.class);</p><p><b>  }</b></p><p>  return updateDao;</p><p><b&

113、gt;  }</b></p><p><b>  }</b></p><p>  構(gòu)造數(shù)據(jù)庫(kù)操作類DbAdapter。在構(gòu)造函數(shù)中先使用getHelper()獲得數(shù)據(jù)庫(kù)DatabaseHelper,然后使用getDao()獲得數(shù)據(jù)操作接口。在析構(gòu)函數(shù)通過(guò)releseHelper()釋放數(shù)據(jù)庫(kù),再通過(guò)Dao類的方法操作數(shù)據(jù)。這樣就可以使用DbAdapter的

114、方法操作數(shù)據(jù),更加方便快捷。</p><p><b>  代碼如下:</b></p><p><b>  /**</b></p><p>  * 管理底層的數(shù)據(jù)服務(wù),比如從數(shù)據(jù)庫(kù)刷新、寫回?cái)?shù)據(jù)庫(kù)數(shù)據(jù)等</p><p>  * @author GW</p><p><b&

115、gt;  */</b></p><p>  public class DbAdapter {</p><p>  private DatabaseHelper databaseHelper = null;</p><p>  Context parent;</p><p><b>  /**</b></

116、p><p><b>  * 構(gòu)造函數(shù)</b></p><p>  * @param context</p><p><b>  */</b></p><p>  public DbAdapter(Context context) {</p><p>  this.parent =

117、 context;</p><p>  calItemList.clear();</p><p>  databaseHelper = getHelper();</p><p>  if (databaseHelper != null) {</p><p><b>  try {</b></p><p

118、>  calItemDao = databaseHelper.getCalItemDao();</p><p>  configDao = databaseHelper.getConfigDao();</p><p>  updateHistoryDao = databaseHelper.getUpdateHistoryDao();</p><p>  } c

119、atch (SQLException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p>

120、<p><b>  }</b></p><p><b>  /**</b></p><p><b>  * 析構(gòu)函數(shù)</b></p><p><b>  */</b></p><p><b>  @Override</b>

121、</p><p>  protected void finalize() {</p><p>  releseHelper();</p><p><b>  }</b></p><p><b>  /**</b></p><p>  * 獲取默認(rèn)的配置信息</p>

122、<p><b>  * @return</b></p><p><b>  */</b></p><p>  public ColorConfig getUsingConfig() {</p><p><b>  try {</b></p><p>  List&

123、lt;ColorConfig> config_list;</p><p>  config_list = configDao.queryForEq("isUse", 1);</p><p>  if (config_list.size() > 0) {</p><p>  config = config_list.get(0);<

124、;/p><p><b>  } else {</b></p><p>  config = new ColorConfig();</p><p>  newOrUpdateColorConfig(config);</p><p><b>  }</b></p><p>  } c

125、atch (SQLException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  return config;</p><p

126、><b>  }</b></p><p>  public UpdateHistory getLastUpdateTime() {</p><p><b>  try {</b></p><p>  List<UpdateHistory> update_list;</p><p>

127、  update_list = updateHistoryDao.queryForEq("updateID", "888");</p><p>  if (update_list.size() > 0) {</p><p>  updateHistory = update_list.get(0);</p><p><

128、;b>  } else {</b></p><p>  updateHistory = new UpdateHistory();</p><p>  updateHistory.updateID = "888";</p><p>  newOrUpdateLastUpdateTime(updateHistory);</p&

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論