版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 畢業(yè)設(shè)計</b></p><p> 題 目 基于Android的電子詞典軟件的設(shè)計與實現(xiàn) </p><p> 學(xué)生姓名 </p><p> 學(xué) 號
2、 </p><p> 專業(yè)班級 通信(2)班 </p><p> 指導(dǎo)教師 </p><p> 學(xué) 院 計算機與通信學(xué)院 </p><p> 答辯日期 2012.6.11 </p>&l
3、t;p><b> 摘要</b></p><p> 本文設(shè)計了基于Android平臺的電子詞典軟件。此英文詞典包括兩部分,一部分是離線的英文詞典,一部分是在線的英文詞典。離線的英文詞典主要是使用Android自帶的輕量級數(shù)據(jù)庫SQLite來保存單詞信息,系統(tǒng)通過SQLite數(shù)據(jù)庫的query方法來查找到與指定英文相對應(yīng)的單詞的中文釋義。在線的英文詞典是利用oracle數(shù)據(jù)庫來保存單詞
4、信息,然后利用Http協(xié)議解析出單詞信息顯示到手機界面上,同時還能夠增加、刪除、更新單詞信息。當然,對于查詢到的生疏的單詞可以添加到單詞本以便于隨時復(fù)習(xí)。</p><p> 關(guān)鍵詞:Android,oracle數(shù)據(jù)庫,SQLite數(shù)據(jù)庫,英文單詞</p><p><b> Abstract</b></p><p> In this pap
5、er, we design and implementation about electronic dictionary software which is based on the Android platform. English dictionary mainly include two parts, and one is to realize the offline English dictionary, the other i
6、s to realize the online English dictionary. Offline English dictionary is mainly used a lightweight database SQLite that belongs to Android to preserve words information, we find the specified English word corresponding
7、to the Chinese interpretation by using query meth</p><p> Keywords: Android; oracle database; SQLite database; English words</p><p><b> 目錄</b></p><p><b> 第1章 緒論
8、1</b></p><p> 第2章 系統(tǒng)需求分析3</p><p> 2.1 軟件的功能要求3</p><p> 2.2 需求分析3</p><p> 2.3 功能需求(用例圖分析)4</p><p> 2.3.1 基本功能需求例圖4</p><p> 2.
9、3.2 離線詞典的例圖6</p><p> 2.3.3 在線查詢用例圖7</p><p> 2.3.4 添加到單詞本的用例圖8</p><p> 2.4 系統(tǒng)結(jié)構(gòu)圖和流程圖10</p><p> 2.5 系統(tǒng)界面需求14</p><p> 2.6 運行環(huán)境15</p><p&g
10、t; 2.6.1 關(guān)鍵技術(shù)15</p><p> 2.6.2 運行環(huán)境16</p><p> 第3章 數(shù)據(jù)庫的設(shè)計17</p><p> 3.1 在線詞典的服務(wù)器端的數(shù)據(jù)庫設(shè)計17</p><p> 3.1.1 數(shù)據(jù)庫中數(shù)據(jù)表的設(shè)計17</p><p> 3.1.2 在線詞典的客戶端的數(shù)據(jù)庫設(shè)計
11、18</p><p> 3.1.3 離線時的數(shù)據(jù)庫的設(shè)計19</p><p> 3.1.4 軟件數(shù)據(jù)模型20</p><p> 3.2 連接數(shù)據(jù)庫21</p><p> 3.2.1 數(shù)據(jù)庫的創(chuàng)建21</p><p> 3.2.2.數(shù)據(jù)庫的操作21</p><p> 3.2.
12、3 數(shù)據(jù)的查看22</p><p> 3.2.4 服務(wù)器和客戶端的連接23</p><p> 第4章 環(huán)境的搭建24</p><p> 4.1關(guān)于 Android的簡單介紹24</p><p> 4.1.1 Android環(huán)境的搭建24</p><p> 4.1.2Android命令行的使用25&
13、lt;/p><p> 4.1.3 Android工程的簡單介紹26</p><p> 4.2 Java Web環(huán)境的搭建29</p><p> 第5章 具體功能模塊的設(shè)計33</p><p> 5.1 查詢模塊的設(shè)計34</p><p> 5.1.1 離線查詢34</p><p>
14、; 5.1.2 在線查詢36</p><p> 5.2 添加單詞模塊37</p><p> 5.3 刪除單詞模塊38</p><p> 5.4 修改單詞模塊39</p><p> 5.5 菜單模塊的實現(xiàn)40</p><p> 5.6 生詞本模塊的設(shè)計44</p><p>
15、 第6章 系統(tǒng)測試與性能分析46</p><p><b> 6.1測試46</b></p><p> 6.2 性能測試及分析47</p><p><b> 總 結(jié)48</b></p><p><b> 參考文獻49</b></p><p&
16、gt; 附錄一:英文翻譯原文50</p><p> 附錄二:英文翻譯譯文58</p><p> 附錄三:程序清單66</p><p><b> 致謝73</b></p><p><b> 第1章 緒論</b></p><p> 如今,英語在人們的工作、學(xué)習(xí)
17、中顯得越來越重要,而手機詞典軟件的出現(xiàn)無疑帶來了極大的便利,遇到遇到生疏的英語單詞,現(xiàn)在拿起手機就能輕松解決。近兩年,谷歌android手機系統(tǒng)日益盛行,支持該系統(tǒng)的應(yīng)用軟件日益增多,自然手機詞典軟件也不例外??v觀web網(wǎng)的發(fā)展,從21世紀初基于web網(wǎng)的應(yīng)用開始逐步引入中國到現(xiàn)在基于web網(wǎng)的應(yīng)用發(fā)展的如此火爆?;赼ndroid手機系統(tǒng)的應(yīng)用也將成為未來我國網(wǎng)絡(luò)行業(yè)的發(fā)展潮流。據(jù)我們調(diào)查2007年11月5日,Google與其他33家
18、手機制造商(包括摩托羅拉、宏達電、三星、LG)、手機芯片提供商、軟硬件提供商合作。電信業(yè)者所聯(lián)合組成了開發(fā)手機聯(lián)盟,發(fā)布了“android”的開發(fā)手機軟硬件平臺。而這平臺的軟件與其他手機平臺受手機型號的影響相比,android完全可以通用?;赼ndroid手機系統(tǒng)的手機這兩年來迅速的引入中國,而且受到中國用戶的一致好評。且看下面這組資料</p><p> ?、贀?jù)臺灣媒體報道,一位分析師稱,作為蘋果iphone在
19、今年假日季節(jié)到來之時的競爭產(chǎn)品,美國最大的移動電話制造商摩托羅拉的智能手機Droid自09年11月6日通過Verizon Wireless推出以來,其銷售量已經(jīng)達到80萬部。 摩托羅拉智能手機Droid,運行的是谷歌Android操作系統(tǒng)。</p><p> ?、诩~約RBCCapitalMarkets公司分析師馬克·休(MarkSue)周日在一份研究報告中表示,該數(shù)字將使得摩托羅拉在第四季度按計劃實現(xiàn)銷
20、售100萬部目標可見基于android操作系統(tǒng)的手機的發(fā)展很快,這也是我們?yōu)槭裁词紫然赼ndroid平臺開發(fā)這款軟件的原因。</p><p> 另外電子詞典作為我們學(xué)習(xí)和生活的重要部分,對于很多英語不好的學(xué)生或上班族們,特別是在北、上、廣、深,這種一線城市的工薪階層們,隨時都會遇到國外的同胞,或者隨時都有可能到國外去深造,如果隨身沒有一個英漢互譯的軟件,可能會難以同別人交流,因此推出一款好的電子詞典軟件是很有
21、必要的,個人認為開發(fā)一款大眾化的手機電子詞典軟件顯得很有必要,特別是對于受教育程度較低和沒有任何相關(guān)專業(yè)知識的人群,意義顯得猶為突出。</p><p> 現(xiàn)行軟件技術(shù)發(fā)展迅速,各種類型的軟件更新速度快,手機電子詞典已經(jīng)不是什么有創(chuàng)意的軟件了,而是一類實用的軟件。正因為其具有實用性,各個手機軟件開發(fā)者都已經(jīng)開發(fā)出來了基于各種手機系統(tǒng)的電子詞典軟件。而基于android系統(tǒng)的電子詞典軟件也已經(jīng)出現(xiàn),</p&g
22、t;<p> 此軟件就是基于Android平臺開發(fā)的,具有操作簡單,適合大部分人群使用。在設(shè)計出本軟件之前,我們首先做了充分的市場調(diào)查,了解基于android平臺的電子詞典軟件的現(xiàn)狀,了解大部分人對手機電子詞典軟件在界面上和功能上的要求,然后進行了細致的軟件需求分析,進行軟件的整體結(jié)構(gòu)設(shè)計,確保軟件中的任何一個功能點都是有意義的,接著開始軟件的實施,將項目分成多個模塊,完成各個具體的功能,最后當整個軟件完成后,我們對軟件
23、進行專業(yè)測試,確保軟件能正確的運行。在設(shè)計該軟件時,我們將該軟件定義為CS結(jié)構(gòu),這樣即使在手機不能接入網(wǎng)絡(luò)的情況下軟件的各項功能還是能照常使用,在設(shè)計代碼時,我們采用常用軟件開發(fā)中常用的MVC模式,將操作界面和業(yè)務(wù)邏輯進行分離,降低代碼的藕合度,便于軟件的升級和維護,而這一思想也正好和android工程的程序結(jié)構(gòu)相符,因為在android軟件開發(fā)中,界面完全可以以xml的形式設(shè)計而不需要進行任何的硬編碼,在軟件的具體功能實現(xiàn)時,使用an
24、droid布局技術(shù)完成UI的設(shè)計,使用android數(shù)據(jù)存儲技術(shù)sqlite完成底層數(shù)據(jù)的讀寫。軟件最終現(xiàn)的功能除了精確查詢,模糊查詢,生詞本等常用的</p><p> 在本論文中,各章主要介紹的內(nèi)容如下:第2章主要介紹了電子詞典軟件的系統(tǒng)需求,第3章主要介紹了數(shù)據(jù)庫的設(shè)計,第4章主要介紹了本軟件中用到的語言環(huán)境的搭建,第5章主要介紹了此軟件的各個模塊的具體功能的實現(xiàn)。</p><p>
25、 第2章 系統(tǒng)需求分析</p><p> 2.1 軟件的功能要求</p><p> 經(jīng)過以上詳細的用戶調(diào)查,在現(xiàn)行業(yè)務(wù)流程和數(shù)據(jù)分析的基礎(chǔ)上,基本可以確定系統(tǒng)設(shè)計必須達到的目標了。根據(jù)軟件工程的原理,需求分析的任務(wù)是確定系統(tǒng)必須完成的工作,也就是對目標系統(tǒng)提出完整、準確、清析、具體的要求。在經(jīng)過了多方的調(diào)查了解后,就可以確定電子詞典的功能需求。以下是電子詞典系統(tǒng)具備的功能:</
26、p><p> ?、僭O(shè)有主菜單選項界面,供用戶選擇要執(zhí)行的操作。</p><p> ?、谠O(shè)有增加單詞界面,管理員可以添加單詞和單詞解釋。</p><p> ?、墼O(shè)有更新單詞界面,管理員可以更新某個單詞的解釋。</p><p> ?、茉O(shè)有刪除單詞界面,管理員可以刪除某個單詞。</p><p> ?、菰O(shè)有單詞查詢界面,用戶可以查
27、詢某個單詞的解釋或者進行模糊查詢。</p><p> ?、拊O(shè)有生詞本管理界面,用戶可以查看生詞本中的單詞與解釋。</p><p> ⑦設(shè)有單詞解釋顯示界面,用來顯示用戶查詢到的單詞的解釋。</p><p> ?、嘣O(shè)有設(shè)置界面,用戶可以設(shè)置該軟件的一些信息。</p><p> ?、嵩O(shè)有數(shù)據(jù)備份和恢復(fù)界面,用戶可以將生詞本中的數(shù)據(jù)方便的備份起來
28、和恢復(fù)。</p><p><b> 2.2 需求分析</b></p><p> 在軟件設(shè)計之前,我們要做的工作就是對電子詞典的流程,操作等,做出詳細的調(diào)查,從而了解系統(tǒng)需要實現(xiàn)的功能。系統(tǒng)在開發(fā)過程中,經(jīng)過比較長時間的設(shè)計階段,可以說模型貼近生活,有很大的現(xiàn)實意義,一般學(xué)生或者上班族一般都都能較方便的使用本軟件,考慮到軟件本身具有較強的專業(yè)性,而這些知識普及率畢竟
29、有限,所以在程序設(shè)計過程中一直遵循實際應(yīng)用的原則。因此它的操作界面會盡可能的簡單,明了。各種控件的布置也會非常的清晰,使用的控件種類不會太多且對控件的操作不會太復(fù)雜。這樣就能讓不參與該軟件設(shè)計的人也能夠熟練的更好的使用。</p><p> 根據(jù)用戶查詢單詞和記憶單詞的要求,和記錄數(shù)據(jù)的一些習(xí)慣,該軟件實現(xiàn)后,能達到</p><p> 以下目標:界面設(shè)計友好、數(shù)據(jù)存儲安全,可靠?;镜脑O(shè)
30、置保證單詞查詢功能。保證數(shù)據(jù)</p><p> 查詢的靈活性。對增加、刪除、修改,查詢的信息進行精密設(shè)計,保證能及時處理信息。此軟件包括兩部分的設(shè)計,第一部分是離線的單詞查詢,Android自帶的輕量級數(shù)據(jù)庫SQLite來保存單詞信息,系統(tǒng)通過SQLite數(shù)據(jù)庫中保存的單詞信息來查找到與指定英文相對應(yīng)的單詞的中文信息。實現(xiàn)這樣一個英文詞典需要解決一系列技術(shù)問題。例如,如何將保存英文單詞信息的數(shù)據(jù)庫隨程序一起發(fā)布
31、;發(fā)布后如何打開數(shù)據(jù)庫;如何在輸入前幾個字母后,在AutoCompleteTextView組件提示裂變中顯示以所輸入字符串開頭的所有單詞。</p><p> 在線的英文詞典在設(shè)計該時,我們將該軟件定義為CS結(jié)構(gòu),即使手機不能接入網(wǎng)絡(luò)但是軟件的各項功能還是能照常使用。在設(shè)計代碼時,我們采用常用軟件開發(fā)中常用的MVC模式,將操作界面和業(yè)務(wù)邏輯進行分離,降低代碼的藕合度,便于軟件的升級和維護。在軟件的具體功能實現(xiàn)時,
32、使用Android布局技術(shù)完成UI的設(shè)計,使用oralce數(shù)據(jù)庫保存單詞的基本信息,使用Android數(shù)據(jù)存儲技術(shù)內(nèi)置的小型嵌入式數(shù)據(jù)庫sqlite完成底層數(shù)據(jù)的讀寫。同樣在線英文詞典也要解決一系列的技術(shù)問題。例如,如何將保存在oracle數(shù)據(jù)庫中的單詞信息解析出來,如何把選中的英文單詞保存在手機上輕量級數(shù)據(jù)庫中以及如何把保存在手機數(shù)據(jù)庫中的單詞信息查詢出來。</p><p> 2.3 功能需求(用例圖分析)&
33、lt;/p><p> 根據(jù)項目的目標,我們可獲得項目系統(tǒng)的基本需求,以下從不同角度來描述系統(tǒng)的需并且使用用例圖來描述,系統(tǒng)的功能需求,我們分為以下幾個本分分別描述:基本功能需求例圖,離線詞典的功能例圖,在線詞典的功能例圖,單詞本的共能例圖。各個例圖分別簡單的描述了各個部分的基本功能和簡單的實現(xiàn)。</p><p> 2.3.1 基本功能需求例圖</p><p> 圖
34、 2.1 系統(tǒng)的基本功能例圖</p><p> 其中各個部分的詳細功能描述如下表所示</p><p> 表2.1 查詢功能表</p><p> 表2.2 添加到單詞本功能表</p><p> 表2.3 發(fā)音功能表</p><p> 2.3.2 離線詞典的例圖</p><p> 圖 1
35、.2 離線的詞典的基本功能例圖</p><p> 其中各個部分的詳細功能描述如下表所示</p><p> 表2.4 離線查詢功能表</p><p> 2.3.3 在線查詢用例圖</p><p> 圖2.3 在線詞典的基本功能的例圖</p><p> 其中各個部分的詳細功能描述如下表所示</p>
36、<p> 表2.5 離線查詢功能表</p><p> 表2.6 離線查詢的菜單的功能表</p><p> 2.3.4 添加到單詞本的用例圖</p><p> 圖2.4 單詞本的基本功能例圖</p><p> 其中各個部分的詳細功能描述如下表所示</p><p> 表2.7 添加到單詞本的功能表&l
37、t;/p><p> 表2.8 顯示添加到單本的單詞</p><p> 2.4 系統(tǒng)結(jié)構(gòu)圖和流程圖</p><p> 此軟件主要分為兩部分來實現(xiàn),一部分是離線的英文詞典,一部分是在線的英文詞典。離線的英文詞典主要是使用Android自帶的輕量級數(shù)據(jù)庫SQLite來保存單詞信息,系統(tǒng)通過SQLite數(shù)據(jù)庫中保存的單詞信息來查找到與指定英文相對應(yīng)的單詞的中文信息。實現(xiàn)這
38、樣一個英文詞典需要解決一系列技術(shù)問題。例如,如何將保存英文單詞信息的數(shù)據(jù)庫隨程序一起發(fā)布;發(fā)布后如何打開數(shù)據(jù)庫;如何在輸入前幾個字母后,在AutoCompleteTextView組件提示裂變中顯示以所輸入字符串開頭的所有單詞。在線的英文詞典在設(shè)計該時,我們將該軟件定義為CS結(jié)構(gòu),即使手機不能接入網(wǎng)絡(luò)但是軟件的各項功能還是能照常使用。在設(shè)計代碼時,我們采用常用軟件開發(fā)中常用的MVC模式,將操作界面和業(yè)務(wù)邏輯進行分離,降低代碼的藕合度,便于
39、軟件的升級和維護。在軟件的具體功能實現(xiàn)時,使用Android布局技術(shù)完成UI的設(shè)計,使用oralce數(shù)據(jù)庫保存單詞的基本信息,使用Android數(shù)據(jù)存儲技術(shù)內(nèi)置的小型嵌入式數(shù)據(jù)庫sqlite完成底層數(shù)據(jù)的讀寫。同樣在線英文詞典也要解決一系列的技術(shù)問題。例如,如何將保存在oracle數(shù)據(jù)庫中的單詞信息解析出來,</p><p> 其中離線詞典的主要的系統(tǒng)流程圖如圖2.5所示,在線詞典的結(jié)構(gòu)圖和系統(tǒng)流程圖分別如圖2
40、.6和2.7所示,系統(tǒng)功能結(jié)構(gòu)圖如圖2.8所示:</p><p> 圖 2.5 離線詞典的系統(tǒng)流程圖</p><p> 說明:其中詞典的部分分為在線的電子詞典和在線的電子詞典,在離線部分主要是對Android自帶的SQLite數(shù)據(jù)的操作,即單詞的信息是存儲在SQLite數(shù)據(jù)庫中的,我們所做的是如何把單詞的基本信息從數(shù)據(jù)庫中讀取出來,并且存儲到單詞本。而在線詞典的部分我們主要使用的是服務(wù)
41、器端的oracle數(shù)據(jù)庫,我們的首要工作就是如何把服務(wù)器端的數(shù)據(jù)庫中的數(shù)據(jù)讀取出來,顯示在手機的界面上。此外還要單詞本的中的單詞信息的存儲,在此處我們也是使用Android的SQLite數(shù)據(jù)庫,而我們的播放單詞的功能就是把存儲在單詞本的單詞按照順序播放。所以本軟件很大以部分的工作是對數(shù)據(jù)庫的操作。</p><p> 2.6 在線詞典的架構(gòu)圖(C/S)</p><p> 在圖2.6中主要
42、針對C/S架構(gòu)進行說明,所謂的C/S架構(gòu)就是客戶端和服務(wù)器端。我們把此軟件的架構(gòu)定義為C/S,最大的好處就是即使沒有網(wǎng)絡(luò)的情況下,我們?nèi)匀豢梢詮姆?wù)器端的數(shù)據(jù)庫中讀取到我們的單詞信息,只是因為我們通過web服務(wù)器發(fā)布了我們的服務(wù)器,構(gòu)建了一個虛擬的網(wǎng)絡(luò)資源。</p><p> 圖2.7 在線詞典的系統(tǒng)流程圖</p><p> 在圖2.7中我們主要的是針對在線的電子詞典進行設(shè)計,涉及到的
43、問題就是如何把服務(wù)器端的數(shù)據(jù)庫中的單詞信息讀取出來然后顯示在手機界面上。我們使用的是Http協(xié)議來解析,通過把單詞信息解析到瀏覽器上,然后我們再通過post()和get()方法來解析瀏覽器上的信息。</p><p> 圖2.8 系統(tǒng)功能結(jié)構(gòu)圖</p><p> 2.5 系統(tǒng)界面需求</p><p> 當今社會的生活節(jié)奏越來越快,隨著硬件移動設(shè)備的越來越先進,人
44、們對移動設(shè)備的要求也越來越高,從以前的追求技術(shù)到現(xiàn)在的追求視覺,因此,也逐步的提高了對系統(tǒng)的要求。因此設(shè)計的過程中應(yīng)該注意界面的友好性以及客戶的用戶體驗。圖2.9是詞典的用戶界面:</p><p> 圖1.9 電子詞典用戶界面</p><p> 說明:在圖2.9為默認的英文詞典的主界面,在文本框中輸入相應(yīng)的單詞或者漢字,點擊查詢按鈕就能顯示出相應(yīng)的漢語釋義或者英文單詞。點擊在線詞典就會
45、出現(xiàn)在線查詢的界面,點擊單詞本就會顯示添加到單詞本中的單詞。</p><p><b> 2.6 運行環(huán)境</b></p><p> 2.6.1 關(guān)鍵技術(shù)</p><p> 本軟件采用java作為開發(fā)語言,布局和數(shù)據(jù)存儲是開發(fā)本軟件的關(guān)鍵技術(shù),布局用來設(shè)計用戶交互界面,用戶界面的設(shè)計是否美觀和合理直接影響用戶體驗,因此運用好布局技術(shù)好是直接
46、和用戶相關(guān)的,而數(shù)據(jù)存儲技術(shù)則記錄了用戶所有的操作數(shù)據(jù)和用戶所需要提取的數(shù)據(jù)。在android中,軟件UI通常使用xml技術(shù)設(shè)計,而xml中控年的位置和狀態(tài)則離不開布局的使用,android中常用的布局有5種,分別是:AbsoluteLayout、LinearLayout、RelativeLayout、FrameLayout、TableLayout,由于布局的使用,并且布局之間可以互相嵌套,使得android軟件UI的設(shè)計變得非常靈活,
47、即使是一些非常復(fù)雜的界面設(shè)計,只要合理的使用布局,也會使開發(fā)變得很容易。</p><p> android中數(shù)據(jù)存儲技術(shù)主要有:文件存儲、preference、sqlite、ContentProvider和網(wǎng)絡(luò)存儲,在本軟件中主要使用到了文件存儲、sqlite,文件存儲是以流的形式讀寫文件,可以以文格的格式,也可以以二進制的形式,在java語言中要使用流,則寫入文件的對象必須進行序列化,sqlite是嵌入式移動
48、設(shè)備中常用的輕量級數(shù)據(jù)庫,可看作計算機上使用的sqlserver、oracle數(shù)據(jù)庫。本軟件中,用戶生詞本中的數(shù)據(jù)都存在sqlite數(shù)據(jù)庫中,而進行數(shù)據(jù)備份和恢復(fù)時則是用文件作為介質(zhì)保存數(shù)據(jù)。</p><p> 2.6.2 運行環(huán)境</p><p> 操作系統(tǒng):Android手機基于Linux操作系統(tǒng)</p><p> 支持環(huán)境:Android 1.5 - 2
49、.3.1版本</p><p> 開發(fā)環(huán)境:Eclipse 3.5 ADT 0.95 </p><p> 第3章 數(shù)據(jù)庫的設(shè)計</p><p> 數(shù)據(jù)結(jié)構(gòu)組織和數(shù)據(jù)庫文件設(shè)計要根據(jù)不同用途,使用要求等,來決定數(shù)據(jù)的整體組織形式等一系列問題。數(shù)據(jù)庫,顧名思義,是存放數(shù)據(jù)的倉庫。只不過這個倉庫是在計算機存儲設(shè)備上,而且數(shù)據(jù)是按一定的格式存放的。數(shù)據(jù)庫中的數(shù)據(jù)按一定數(shù)
50、據(jù)模型組織、描述和存儲,具有較小的重復(fù)度、較高的數(shù)據(jù)獨立性和易擴展性,并且可以被在一定范圍內(nèi)的各種用戶共享。在涉及數(shù)據(jù)庫的軟件開發(fā)中,需要根據(jù)有待解決的問題性質(zhì)、規(guī)模,以及所采用的前端程序創(chuàng)建工具等,做出合適的數(shù)據(jù)庫類型選擇。</p><p> 3.1 在線詞典的服務(wù)器端的數(shù)據(jù)庫設(shè)計</p><p> 在線查詢時需要把服務(wù)器端的oracle數(shù)據(jù)庫中的數(shù)據(jù)解析出來。把單詞庫導(dǎo)入到orac
51、le數(shù)據(jù)庫。在本系統(tǒng)中采用了簡易版的oracle,即數(shù)據(jù)庫的名字為XE,首先要解決的是在該數(shù)據(jù)庫里某個用戶下創(chuàng)建表。</p><p> 3.1.1 數(shù)據(jù)庫中數(shù)據(jù)表的設(shè)計</p><p> 在此軟件中表的關(guān)系比較簡單,只有一張單詞表,其具體的設(shè)計為</p><p> 表3.1 數(shù)據(jù)庫中數(shù)據(jù)表的具體設(shè)計</p><p> 說明:name為
52、單詞的英文名稱為數(shù)據(jù)表的主鍵,info為單詞的中文釋義不能為空。在DOS下創(chuàng)建數(shù)據(jù)表的具體步驟為:</p><p> 安裝oracle簡易版的數(shù)據(jù)庫之后打開DOS進行配置,配置Oracle的步驟為</p><p> (1)以oracle管理員的身份進入oraclesqlplus “as sysdba”</p><p> ?。?)啟動oracle監(jiān)聽先退出exit
53、;然后啟動監(jiān)聽lsnrctl start</p><p> ?。?)創(chuàng)建新的用戶首先以管理員的身份進入sqlplus “/as sysdba”</p><p> create user name identified by password;</p><p> grant resourct,connect to name;</p><p>
54、; 注:以新的用戶登錄 首先推出數(shù)據(jù)庫exit;然后sqlplus name/password</p><p> ?。?)修改當前的語言格式,默認為中文</p><p> alter session set nls_date_language=english;</p><p> ?。?)創(chuàng)建新的數(shù)據(jù)表、</p><p> create
55、table b_dict(</p><p> name varchar2(20) primary key,</p><p> info varchar2(100) not null</p><p><b> );</b></p><p> ?。?)查看數(shù)據(jù)表是否創(chuàng)建成功select table_name from
56、user_tables;</p><p> 查看數(shù)據(jù)表的內(nèi)容desc b_dict;</p><p> 查看數(shù)據(jù)表的所有內(nèi)容select * from b_dict;</p><p> 將單詞導(dǎo)入到數(shù)據(jù)庫中</p><p> insert into b_dict values(‘AD’,’/Ad/ abbr.公元(后);耶穌紀元后’)
57、;</p><p> 圖 3.1 數(shù)據(jù)表b_dict的內(nèi)容</p><p> 3.1.2 在線詞典的客戶端的數(shù)據(jù)庫設(shè)計</p><p> 客戶端采用的是sqlite數(shù)據(jù)庫,sqlite數(shù)據(jù)庫是Android自帶的小型數(shù)據(jù)庫,可以將少量的數(shù)據(jù)存放在該數(shù)據(jù)庫中。針對不同的用戶的生詞是不同的,可以很方便的將生詞導(dǎo)入到數(shù)據(jù)庫中,也可以很方便的將單詞從數(shù)據(jù)庫中刪除。此軟
58、件中的數(shù)據(jù)表的關(guān)系也比較簡單,只有一張表用來存放添加到單詞本中的單詞具體設(shè)計如下表所示:</p><p> 表3.2 單詞本表的具體設(shè)計</p><p> 說明:title:存放英文單詞。body:存放相應(yīng)的英文單詞的中文解釋。數(shù)據(jù)庫定義為sqlite.db的原因是:android平臺下采用的數(shù)據(jù)庫是sqlite3,運行后生成數(shù)據(jù)庫的名稱.db文件.定義好的數(shù)據(jù)庫可以直接導(dǎo)入到/dat
59、a/data/com.briup.dictionary/databases/sqlite.db 。這樣生詞本的數(shù)據(jù)就可以直接在模擬器中顯示出來。</p><p> 建表語句為create table dict</p><p> (_id Integer primary key increment by,</p><p> title text not null
60、,</p><p> body text not null);</p><p> 在DOS下查看android下的數(shù)據(jù)庫文件的內(nèi)容如下:</p><p> (1)cd /data/data/com.briup.dictionary/databases/sqlite.db</p><p> (2) sqlite3 sqlite.db&l
61、t;/p><p> (3).tables</p><p> (4)select *from dict;</p><p> (5)將單詞導(dǎo)入到數(shù)據(jù)庫中,insert into b_dict values(1,‘AD’,’/Ad/ abbr.公元;耶穌紀元后’);</p><p> 3.1.3 離線時的數(shù)據(jù)庫的設(shè)計</p>&l
62、t;p> 這里的數(shù)據(jù)庫的設(shè)計和單詞的單詞表的設(shè)計基本類似,這里就省略一些詳細的建表的過程而簡單的給出設(shè)計的功能表。</p><p> 表3.3 離線時的數(shù)據(jù)庫的設(shè)計表</p><p> 3.1.4 軟件數(shù)據(jù)模型</p><p> 建立系統(tǒng)數(shù)據(jù)模型的主要工具是實體—關(guān)聯(lián)圖,即E-R圖。E-R圖形符號約定如下表:</p><p>
63、 表3.4 E-R圖圖形符號表</p><p> 根據(jù)上面的給出的E-R圖的圖形符號表的描述,畫出的在線時的數(shù)據(jù)庫的E-R分別如下:</p><p> 圖 3.2 在線時服務(wù)器端的單詞表的E-R圖</p><p> 圖 3.3 在線時客戶端的單詞本中單詞表的E-R圖</p><p><b> 3.2 連接數(shù)據(jù)庫</b
64、></p><p> 在線時的服務(wù)器端用的Oracle數(shù)據(jù)庫用來存儲單詞的基本信息(單詞的名稱和單詞的中文釋義),客戶端用的是android自帶的sqlite數(shù)據(jù)庫。這里將首先介紹如何進行Android數(shù)據(jù)庫連接,Android中自帶SQLite數(shù)據(jù)庫,這是一個十分小型的數(shù)據(jù)庫,這樣正適合Android這種移動平臺使用。Android數(shù)據(jù)庫存儲的位置在data/data/<項目文件夾>/dat
65、abases/目錄下,Android是利用ContentProvider作為內(nèi)容提供商,SQLiteOpenHelper數(shù)據(jù)庫幫助類來進行對數(shù)據(jù)庫的創(chuàng)建和操作。通過Context.getContentResolver()方法直接對數(shù)據(jù)庫進行操作。程序中數(shù)據(jù)庫類為DBHelper extends SQLiteOpenHelper(繼承關(guān)系),內(nèi)容提供類DBProvider extends ContentProvide(繼承關(guān)系)。其次介紹
66、服務(wù)器端的數(shù)據(jù)庫的詳細設(shè)計,再介紹服務(wù)器端和客戶端的數(shù)據(jù)庫的連接。</p><p> 3.2.1 數(shù)據(jù)庫的創(chuàng)建</p><p> Android 提供了標準的數(shù)據(jù)庫創(chuàng)建方式。繼承SQLiteOpenHelper ,實現(xiàn)onCreate() 和 onUpgrade() 兩個方法,有個好處就是便于數(shù)據(jù)庫版本的升級,連接數(shù)據(jù)庫的算法見程序清單。數(shù)據(jù)庫如果創(chuàng)建不成功則拋出FIleNotFoun
67、dException異常。服務(wù)器端數(shù)據(jù)庫的創(chuàng)建主要是通過DOS利用命令進行創(chuàng)建的,詳細的創(chuàng)建命令在2.1.1中已經(jīng)詳細的做了介紹,此處不再進行贅述。</p><p> 3.2.2.數(shù)據(jù)庫的操作</p><p> Android對SQLite數(shù)據(jù)庫的操作主要有插入、刪除、更新、查詢操作。但是前置條件是必須打開數(shù)據(jù)庫。在這里打開數(shù)據(jù)庫用的主要的方法是openForReadable()和op
68、enForWriteable(),打開數(shù)據(jù)之后才能進行相關(guān)的操作,其中插入單詞的方法是insertWord(),刪除單詞的方法是deleteNote(),更新單詞的方法是updateWord()。其詳細代碼見程序清單。注意:在操作完了數(shù)據(jù)庫之后,需要對資源進行釋放,這里就是對數(shù)據(jù)庫資源進行關(guān)閉,關(guān)閉數(shù)據(jù)庫的方法是close()。在服務(wù)器端的數(shù)據(jù)庫同樣有增加,刪除和更新等操作,因為我們用在線電子詞典時,需要把數(shù)據(jù)從服務(wù)器端通過URL讀出來
69、。因此我們用的是servlet來實現(xiàn)單詞的增刪改查。其中查詢操作的介紹將在下面的3.2.3節(jié)數(shù)據(jù)的查看中詳細的分析,這里不再贅述。</p><p> 3.2.3 數(shù)據(jù)的查看</p><p> Android中程序是利用Cursor游標類指向數(shù)據(jù)表中的某一項,然后進行查詢數(shù)據(jù),用Log日志顯示出來。查詢時用的方法是數(shù)據(jù)庫本身的查詢方法query(),需要注意的是這個方法比較復(fù)雜,他有8個
70、參數(shù),因為它將一個完整的SQL語句拆成了若干個部分:</p><p> 第一個參數(shù)table:表名,相當于SQL的from后面的部分。在此還要注意如果和多表聯(lián)合查詢時,就用逗號將兩個表名分開,拼成一個字符串的table值。</p><p> 第二個參數(shù)是columns,要查詢出來的列名。相當于SQL的select后面的部分。</p><p> 第三個參數(shù)是se
71、lection,查詢的條件,相當于SQL的where后面的部分,在這個語句中允許使用“?”,也就是說這個用法和JDBC中的PreparedStatement的用法相似。</p><p> 第四個參數(shù)selectionArgs,對應(yīng)于selection的值,selection有幾個問號,這里就得用幾值。</p><p> 第五個參數(shù)groupBy,相當于SQL的group by后面的部分
72、。</p><p> 第六個參數(shù)having,相當于SQL的having后面的部分。</p><p> 第七個參數(shù)orderBy,相當于SQL的order by后面的部分,如果是倒序,或者是聯(lián)合排序,可以寫成類似這樣:String orderBy = “id desc,name”。</p><p> 第八個參數(shù)limit,指定的結(jié)果集的大小,它和Mysql的l
73、imit用法不太一樣,Mysql可以指定從多少行開始之后取多少條,例如,“l(fā)imit 100,10”,但是這里只支持一個數(shù)值。</p><p> 注意:游標查詢時,必須把Cursor移動到第一個位置,即moveToFirst(),因為每次查詢時,游標都會從第一個往后查找,通常在查詢數(shù)據(jù)庫之前進行。此外,游標和數(shù)據(jù)庫一樣都要及時關(guān)閉,要不會出現(xiàn)異常。其詳細代碼見程序清單。在Oracle中查詢用到的也是數(shù)據(jù)的que
74、ry()方法,他用到的參數(shù)只有一個就是sql語句,sql語句的寫法是sql=“select sum(字段名) as 別名 from 數(shù)據(jù)表 where 條件表達式,”例如String sql = "select * from b_dict where name=?"。最后要執(zhí)行sql語句,用法如下set rs= conn.excute(sql),用rs(別名)表示獲取統(tǒng)計的值。</p><p>
75、; 3.2.4 服務(wù)器和客戶端的連接</p><p> 服務(wù)器端和客戶端的連接通過URL連接到瀏覽器,然后客戶端從瀏覽器端把信息解析出來。此處主要的方法就是post()或者get()方法,一般用到的都是post()方法,下面簡單介紹一下post()方法的參數(shù)極其參數(shù)的用法。post()方法有兩個參數(shù),第一個是url(統(tǒng)一資源定位符)相當于網(wǎng)址,第二個是封裝的參數(shù)。其使用步驟是:</p><
76、p> 1 創(chuàng)建HttpClient對象;</p><p> 2 根據(jù)實際需求創(chuàng)建HttpGet和HttpPost對象</p><p> 3 如果需要發(fā)送參數(shù),調(diào)用setParams方法來添加請求參數(shù),HttpPost對象可調(diào)用setEntity</p><p><b> 來設(shè)置。</b></p><p>
77、 4 調(diào)用HttpClient的execute發(fā)送請求,返回一個HttpRequest。</p><p> 5 調(diào)用HttpResponse對象相關(guān)方法獲取服務(wù)器的相應(yīng)內(nèi)容進行處理。</p><p><b> 第4章 環(huán)境的搭建</b></p><p> 本軟件在線詞典的設(shè)計是C/S結(jié)構(gòu)的系統(tǒng),因此要先搭建服務(wù)器端,利用Java EE中的
78、servlet來提供服務(wù),并將其部署在Tomcat下。需要解決的是創(chuàng)建不同的servlet來提供不同的服務(wù)。另外此軟件是運行在Android平臺下,所以需要搭建Android平臺。</p><p> 4.1關(guān)于 Android的簡單介紹</p><p> 任何事物要運行都要有它的環(huán)境,Android也要有它的環(huán)境才能夠運行,下面介紹Android的開發(fā)環(huán)境的配置。</p>
79、<p> 4.1.1 Android環(huán)境的搭建</p><p> 搭建開發(fā)環(huán)境需要的軟件:</p><p> 操作系統(tǒng):Windows XP或Linux</p><p> 軟件包:Android SDK(Software Development kit Java Development kit)、ADT(Android Development T
80、ool)</p><p> IDE環(huán)境:Eclipse IDE+ADT Eclipse 3.3 以上</p><p> JDK:Java Runtime Environment 虛擬機、(JDK)Java Development kit</p><p><b> 安裝步驟如下:</b></p><p> 第一步:
81、安裝Java虛擬機sun-java7-jdk版本</p><p> 第二步:安裝Eclipse3.5工具官網(wǎng)http://www.eclipse.org/downloads/選擇版本(圖4.1)進行安裝。</p><p> 圖4.1 Eclipse的安裝版本</p><p> 第三步:安裝Android SDK,首先要下載SDK,可以在這個網(wǎng)址下載http:/
82、/developer.android.com/sdk,選擇相應(yīng)的系統(tǒng)進行安裝。</p><p> 第四步:安裝Android ADT插件,運行Eclipse,選擇help->install new software選擇add,將會彈出一個如圖3.2對話框,點擊OK,選擇要安裝的軟件,然后next,選擇接受協(xié)議,直到安裝成功,重啟Eclipse軟件,設(shè)置Android SDK Home,window->
83、;refrence在SDK location中輸入SDK Tools路徑:E:\android\android-sdk-windows點擊OK這樣Android的環(huán)境就已經(jīng)搭建成功了。</p><p> 圖4.2 安裝ADT</p><p> 4.1.2Android命令行的使用</p><p> 1.創(chuàng)建Android Virtual Device(AVD)
84、</p><p> 使用android list target命令列出當前可用SDK版本</p><p> android create avd –n <name> -t <targetID> [-<option><value>]</p><p> 2.模擬器Emulator的使用</p><
85、p><b> 啟動和停止模擬器</b></p><p> emulator –avd <avd_name> </p><p> 3.Android Debug Bridge(ADB)的使用</p><p> 查詢當前模擬器實例數(shù)量</p><p> adb devices</p>
86、<p> 4.本地機器和模擬器之間相互拷貝文件</p><p> D:adb push d:\tesst.txt/sdcard</p><p> D:adb pull /sdcard/test.txt d:/</p><p> ?。?)安裝apk應(yīng)用程序</p><p> adb push d:\test.apk/sdca
87、rd/</p><p> adb install test.apk</p><p> ?。?)使用shell命令</p><p> 在DOS命令行輸adb shell 進入shell命令行</p><p> 退出shell用exit</p><p> 4.1.3 Android工程的簡單介紹</p>
88、<p> Android系統(tǒng)將插件ADT集成到了Eclipse工具上,因此,一個Android程序啟動后,系統(tǒng)會啟動一個模擬器(Emulator),該模擬器是一款手機版的樣式,擁有手機硬件的基本操作,我們可以右邊的鍵盤通過代碼屬性設(shè)置將其隱藏,界面的大小可自由設(shè)定,目前最大支持800*600分辨率。</p><p> 1.Android的工程程序的結(jié)構(gòu):Android工程基本結(jié)構(gòu)目錄包括:src
89、(源代碼),gen(Android系統(tǒng)自動生成的常量),res(資源文件):主要是存放程序界面的布局配置(.xml)文件和圖片資源。AndroidMainfes.xml是Android四大組件的驅(qū)動配置文件,有它的存在,Android程序的四大組件才可以正常的跳轉(zhuǎn)。Android資源的類型和布局如表3.1所示:</p><p> 表4.1 Android資源的類型和布局表</p><p>
90、; 下圖4.2和4.3為電子詞典代碼結(jié)構(gòu)和個界面的配置文件,圖像資源等,其中src為java的源代碼,res/drawable為詞典工程程序中用到的圖片資源,res/layout為詞典工程中用到的布局文件,res/values為工程中用到的各種XML資源文件,res/raw為工程中離線查詢時用到的數(shù)據(jù)庫資源。</p><p> 圖4.2 電子詞典工程的結(jié)構(gòu)圖1圖4.3 電子詞典工程結(jié)構(gòu)圖2</
91、p><p> 2.Android工程的配置文件AndroidManifest.xml的介紹</p><p> Android系統(tǒng)的任何一個程序啟動都需要AndroidManifest.xml來啟動程序,任何一個新建的工程目錄都會自動生成一個AndroidManifest.xml文件,此配置文件時整個程序能夠正常運行的核心,他里面包含了AndroidSDK的版本,程序運行的默認Activit
92、y,當程序中的任何一個組件觸發(fā)事件后,系統(tǒng)都會自動的去AndroidManifest.xml中尋找標示來做出相應(yīng)的操作。任何一個AndroidManifest.xml文件的格式都應(yīng)為:</p><p> <?xml version="1.0" encoding="utf-8"?></p><p> <manifest xmlns
93、:android="http://schemas.android.com/apk/res/android"</p><p> android:versionCode="1"</p><p> android:versionName="1.0"></p><p> <application
94、></p><p> <activity></p><p> <intent-filter></p><p><b> <action/></b></p><p> <category/></p><p> </intent-f
95、ilter></p><p> </activity></p><p> </application></p><p> <uses-permission/></p><p> </manifest></p><p> Android支持的編碼是"
96、;utf-8",當程序中出現(xiàn)亂碼是,我們須將其編碼格式轉(zhuǎn)化為"utf-8".在 AndroidManifest.xml中會在第一行聲明一句:<?xml version="1.0" encoding="utf-8"?>。在第二行定義了我們需要使用的架構(gòu),該架構(gòu)來自xmlns:android="http://schemas.android.com/a
97、pk/res/android"xmlns(XML namespace)是一個命名空間,它就像一條河的源頭一樣能讓我們找到系統(tǒng)架構(gòu),每一個配置文件必須有這個xmlns,否則程序中的所使用的所有資源將無法找到。</p><p> 在application元素我們定義android:icon="@drawable/icon"</p><p> android:l
98、abel="@string/app_name",android:icon是程序在手機中顯示的圖片,我們運用@drawable/icon表示了對res/drawable目錄下的icon.png的引用。@string/app_name表示了對res/value目錄下string.xml中定義的app_name參數(shù)的引用。</p><p> <activity android:name=&q
99、uot;.DemoDectionary"></p><p> <intent-filter></p><p> <action android:name="android.intent.action.MAIN"/></p><p> <category android:name="an
100、droid.intent.category.LAUNCHER" /></p><p> </intent-filter></p><p> </activity></p><p> 這是系統(tǒng)確定的首先要啟動的Activity是DemoDectionary。在intent-filter選項中,有action和categor
101、y等等屬性,我們需要定義action的值為android.intent.action.MAIN,category的值為android.intent.category.LAUNCHER,它們是系統(tǒng)的值,程序在解析到這些常用后就可以確定首先要啟動的Activity。當我們需要通過一個組件觸發(fā)另一個組件時,我們將設(shè)定action和category的其它屬性值,系統(tǒng)會根據(jù)我們設(shè)定的屬性值去AndroidManifest.Xml的applicat
102、ion 中尋找標識,任何一個Activity的action和category是唯一,所以程序在任何時候都能唯一啟動一個Activity,這樣,不同的Activity之間的跳轉(zhuǎn)就實現(xiàn)了。在AndroidManifest.Xml中有一個根結(jié)點<uses-sdk>,它是我們需要定義的ADT版本,例如我們將其值設(shè)定為android:minSdkVersion="4",則表示此Android工程所用的版本為1.6,
103、Androi</p><p> <provider></provider></p><p> <activity></activity></p><p> <receiver></receiver></p><p> 其中聲明provider時還需要聲明其授權(quán) a
104、uthorities。每個組件里面還有很多的屬性,會根據(jù)程序的具體需要定義不同的屬性。</p><p> 4.2 Java Web環(huán)境的搭建</p><p> 本軟件是C/S結(jié)構(gòu)的系統(tǒng),因此要先搭建服務(wù)器端,利用Java EE中的servlet來提供服務(wù),并將其部署在Tomcat下。需要解決的是創(chuàng)建不同的servlet來提供不同的服務(wù)。Web服務(wù)的名稱:DictionaryServic
105、e,在myEclipse中新建一個web project,取名為DictionaryService,其結(jié)構(gòu)如下圖:</p><p> 圖4.4 Web結(jié)構(gòu)圖</p><p> com.briup.jdbc是CVM模式中的低層,數(shù)據(jù)庫層,包中的類是用來連接數(shù)據(jù)庫和操作數(shù)據(jù)庫的,其中JDBCConnectionFactory.java用來連接數(shù)據(jù)庫。</p><p>
106、; private static String url;</p><p> private static String userName;</p><p> private static String userPwd;</p><p> 連接數(shù)據(jù)庫需要這三個值,而這三個值放入到dbFile中,通過Properties來獲取。然后通過連接工廠方法。Connec
107、tion conn = DriverManager.getConnection(url,userName,userPwd),com.briup.service是CVM模式中的service層,為用戶提供服務(wù)。com.briup.service是CVM模式中的Dao層,為service提供服務(wù),封裝對數(shù)據(jù)庫的操作的方法。com.briup.servlet包中就各個不同的Servlet類,其具體情況如下:</p><p&
108、gt; 提供模擬查詢的servlet是QueryDictsServlet,重寫其中的doGet()和doPost()方法,該servlet來處理模擬查詢的功能,并接收要匹配的字符串,參數(shù)為name,其http://192.168.223.50:8888/DictionaryService/servlet/querydictsservlet?name=BC;提供查詢的servlet是QueryDictServlet, 重寫其中的doGe
109、t()和doPost()方法,該servlet來處理確認查詢的功能,并接收要查詢的字符串,參數(shù)為name,其url為:http://192.168.223.50:8888/DictionaryService/servlet/querydictsservlet?name=BC;提供刪除單詞的servlet是DeleteDictsServlet,重寫其中的doGet()和doPost()方法,該servlet來處理刪除單詞的功能,并接收要刪
110、除的字符串,參數(shù)為name,其url為http://192.168.223.50:8888/DictionaryService/s</p><p> 詞的功能,不需要接收任何參數(shù),其URL為:</p><p> http://192.168.223.50:8888/DictionaryService/servlet/queryservlet。</p><p>
111、 要測試是否連接成功可以打開任意瀏覽器,輸入上面的url,如果能夠正確的解析出來服務(wù)器端的信息,表示連接成功。如圖是輸入查詢的url時出現(xiàn)的信息:此信息是以xml的信息表示的,第一行表示xml的版本信息以及所用到的編碼格式,在下面是根節(jié)點response,其中包含兩個子節(jié)點message和dict,而dict中又包含了兩個子節(jié)點dictName和dictInfo,需要主要的是message是對服務(wù)器端是否解析成功的標注,也可以不要此節(jié)點
112、,但是根節(jié)點必須存在。實際上我們從瀏覽器解析信息的時候就是通過各個信息的節(jié)點進行解析的,此處可以使用兩中解析方法,一種是SAX解析,但是此解析主要針對的是大批量的數(shù)據(jù)解析,我們這里用到的信息只是單詞的基本信息,沒有必要使用它。因此我們使用的是針對小批量處理的DOM解析。</p><p> 圖 4.5 從瀏覽器解析到的查詢信息</p><p> 如上圖如果要解析出單詞的英文名字(engl
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子詞典設(shè)計與開發(fā)畢業(yè)設(shè)計
- 基于wince的電子詞典的設(shè)計與實現(xiàn)
- 基于android平臺的維漢多媒體電子詞典的設(shè)計與實現(xiàn)
- 基于Android的電子詞典手機客戶端的設(shè)計與實現(xiàn).pdf
- 畢業(yè)設(shè)計論文終稿 多功能電子詞典的設(shè)計與實現(xiàn)
- 基于WinCE的電子詞典的設(shè)計與實現(xiàn).pdf
- 多功能漢彝電子詞典的軟件設(shè)計與實現(xiàn)
- android手機圖像瀏覽軟件畢業(yè)設(shè)計(含外文翻譯)
- android手機圖像瀏覽軟件畢業(yè)設(shè)計(含外文翻譯)
- 畢業(yè)論文---基于vb的電子詞典設(shè)計與開發(fā)
- android手機圖像瀏覽軟件畢業(yè)設(shè)計(含外文翻譯)
- 多功能漢彝電子詞典的軟件設(shè)計與實現(xiàn).pdf
- 基于手機攝像取詞的電子詞典的設(shè)計與實現(xiàn).pdf
- 一種電子詞典的設(shè)計與實現(xiàn).pdf
- 基于μC-OS-Ⅱ的嵌入式電子詞典的軟件設(shè)計與實現(xiàn).pdf
- 基于三級存儲架構(gòu)的嵌入式電子詞典軟件的設(shè)計與實現(xiàn).pdf
- 漢蒙電子詞典開發(fā)平臺的設(shè)計與實現(xiàn).pdf
- 電子詞典中文件系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 畢業(yè)設(shè)計---基于android平臺的音樂播放器設(shè)計與開發(fā)(含外文翻譯)
- 質(zhì)檢專業(yè)電子詞典的設(shè)計與研究.pdf
評論
0/150
提交評論