胡卉穎
(九江職業(yè)大學(xué),江西 九江 332000)
在科技發(fā)展的浪潮中,Android智能移動操作系統(tǒng)應(yīng)運而生,具有多樣化優(yōu)勢,有效解決了移動終端封閉問題,已成為當(dāng)下行業(yè)發(fā)展中的亮點之一。同時,Android也是重要的開源體系架構(gòu),Android下的開源數(shù)據(jù)庫框架LitePal已被頻繁應(yīng)用,發(fā)揮著多樣化的作用,這是傳統(tǒng)數(shù)據(jù)庫操作無法比擬的,符合大數(shù)據(jù)時代客觀要求,能夠有效處理爆發(fā)式增長的信息數(shù)據(jù),充分展現(xiàn)信息數(shù)據(jù)價值,提高工作人員工作效率與質(zhì)量,促使不同行業(yè)、領(lǐng)域持續(xù)發(fā)展。
就Android而言,中文名稱為“機器人”。2007年11月,Google對其賦予了全新的意義,即開源手機操作系統(tǒng),建立在Linux平臺基礎(chǔ)上[1],代碼開源,運行過程中可以支持多樣化的無線通信形式,也包括硬件配置,不斷作用到智能移動終端上,其版本不斷更新,深受移動開發(fā)愛好者歡迎。在科技發(fā)展的浪潮中,手機平臺經(jīng)過了漫長的發(fā)展階段,而Google Android Platform屬于真正意義上的開放平臺,Android不斷得到不同層次開發(fā)者以及使用者的認可。剛開始,Android只是被應(yīng)用到信息服務(wù)方面,在我國3G業(yè)務(wù)發(fā)展過程中,Android應(yīng)用范圍進一步擴大,逐漸出現(xiàn)在交友與娛樂領(lǐng)域中。隨后,在交友聊天、手機游戲等方面發(fā)揮著關(guān)鍵性作用,工具類方面的應(yīng)用也比較多,比如,Google翻譯、有道詞典。隨著Android Studio被發(fā)布,我們可以巧妙利用E-clipse,可以充分發(fā)揮Android Studio多樣化作用,合理開發(fā)Android APP,能夠在一定程度上簡化開發(fā)環(huán)境流程。Java是Android系統(tǒng)的開發(fā)語言,C/C++也會應(yīng)用到數(shù)據(jù)庫操作某些特殊情況,比如,加密解密算法、開發(fā)圖形圖像,也就是說,如果所開發(fā)的Android應(yīng)用程序不處于Linux平臺,開發(fā)人員必須堅持具體問題具體分析的原則,做好各方面準備工作。
就Android平臺來說,由多個層次組成,各自發(fā)揮著多樣化的作用。在Linux內(nèi)核層方面,Android關(guān)鍵性系統(tǒng)服務(wù)和Linux2.6內(nèi)核有著密不可分的聯(lián)系,內(nèi)存管理、驅(qū)動模型等都離不開Linux2.6[2]。在Android運行環(huán)境和庫方面,核心庫位于Android中,具有Java這一編程語言核心庫2/3功能,掌控著Android各應(yīng)用程序,都有著單獨的Dalvik虛擬機實例,Dalvik虛擬機和Linux內(nèi)核某些功能緊密相連[3][4]。在應(yīng)用程序框架方面,開發(fā)人員可以隨時訪問其中的API框架,各個應(yīng)用程序都可以不受限制發(fā)送自身功能塊,供其他應(yīng)用程序使用。在應(yīng)用程序方面,所開發(fā)的Android自身便于具有某些關(guān)鍵性應(yīng)用程序,比如,SMS客戶端、E-mail客戶端,而各個應(yīng)用程序的順利實現(xiàn)離不開Java語言編寫。在此基礎(chǔ)上,Android具有多樣化優(yōu)勢,體現(xiàn)在多個方面,有著豐富的開發(fā)環(huán)境,比如,設(shè)備模擬器、性能分析表,SQLite數(shù)據(jù)庫、優(yōu)化圖形庫[5]、多媒體支持,為開源數(shù)據(jù)庫框架LitePal的構(gòu)建與應(yīng)用提供了有利保障。在應(yīng)用過程中,Android各個程序的Linux進程并不相同,在Linux權(quán)限設(shè)置作用下,實踐操作中的訪問權(quán)限可以得到合理化控制,如果情況特殊,運行中的Android多個應(yīng)用程序可以共享某一Linux進程。
在大數(shù)據(jù)時代背景下,各方面信息數(shù)據(jù)呈爆發(fā)式增長趨勢,不同行業(yè)、領(lǐng)域工作人員的工作量大幅度增加,需要處理海量的信息數(shù)據(jù)。傳統(tǒng)數(shù)據(jù)庫操作方式已無法有效滿足時代發(fā)展的客觀要求,不利于在最短的時間內(nèi)科學(xué)整理、處理海量信息數(shù)據(jù),數(shù)據(jù)更新慢,急需要進一步優(yōu)化完善,全方位動態(tài)管理信息數(shù)據(jù),為不同行業(yè)以及領(lǐng)域發(fā)展提供具有較高參考價值的信息數(shù)據(jù),促使不同行業(yè)、領(lǐng)域迅猛發(fā)展,促進社會經(jīng)濟全面協(xié)調(diào)發(fā)展。在這一背景下,Android的開發(fā)應(yīng)用尤為重要,開發(fā)人員要綜合分析各方面影響因素,客觀分析傳統(tǒng)數(shù)據(jù)庫操作方式存在的問題,加以優(yōu)化完善,和Android相互作用,充分發(fā)揮其多樣化優(yōu)勢。
在Android開發(fā)應(yīng)用背景下,傳統(tǒng)數(shù)據(jù)庫操作方式得以優(yōu)化完善,優(yōu)化利用Android系統(tǒng)運行過程中的SQLite這一嵌入式關(guān)系型數(shù)據(jù)庫,進行一系列數(shù)據(jù)庫操作,對Android開發(fā)人員提出了新的更高要求,必須熟練掌握對應(yīng)的SQL語法,這是因為在Android系統(tǒng)作用下,傳統(tǒng)數(shù)據(jù)庫操作順利進行和SQL語句緊密相連。Android系統(tǒng)可以提SQLiteOpenHelper,它封裝了創(chuàng)建和更新數(shù)據(jù)庫的各種邏輯和方法[6],工作人員能夠更好地管理傳統(tǒng)數(shù)據(jù)庫表,創(chuàng)建類集、數(shù)據(jù)庫升級相互作用,便于對數(shù)據(jù)庫版本進行自動化管理。就SQLiteOpenHelper來說,在創(chuàng)建過程中,開發(fā)人員需要客觀分析其特點、性質(zhì)等,科學(xué)創(chuàng)建幫助類,便于重新合理寫出其抽象方法,即 onCreate0、onUpgrade0,以此為基點,根據(jù)傳統(tǒng)數(shù)據(jù)庫運行狀態(tài),創(chuàng)建合理化的數(shù)據(jù)庫,并對其進行針對性升級。最基本的數(shù)據(jù)庫幫助類的代碼如下所示:
public classMy SQLite Helperextends SQLiteOpenHelper{public MySQLiteHelper(Context context,String name,CursorFactory factory,intversion){super(context,name,factory,version);}
@override public void onCreate(SQLiteDatabase db){@Override public void onUpgrade(SQLiteDatabase db,intoldVersion,?int?newVersion)}
在創(chuàng)建數(shù)據(jù)庫過程中,開發(fā)人員需要綜合分析一系列主客觀因素,優(yōu)化利用onCreate0這一抽象方法,便于順利完成建表操作,根據(jù)表格類型、內(nèi)容等,合理寫出代碼。而其中的建表語句可以將其作為常量,將db.execSQL巧妙應(yīng)用到onCreate0中,相關(guān)建表語句便可以順利執(zhí)行,也就是說,在Android操作系統(tǒng)作用下,SQLiteDatabase實例被獲取之后,便可以自動化創(chuàng)建數(shù)據(jù)庫表,大幅度簡化來傳統(tǒng)數(shù)據(jù)庫操作下庫表創(chuàng)建流程,可以實時進行一系列操作,根據(jù)實際情況,動態(tài)更新信息數(shù)據(jù),不斷提高信息數(shù)據(jù)利用價值。
站在客觀角度來說,在Android操作系統(tǒng)背景下,LitePal即是新時期開源數(shù)據(jù)庫框架之一,建立在Android基礎(chǔ)上[7]。在創(chuàng)建這一數(shù)據(jù)庫框架過程中,開發(fā)人員優(yōu)化利用了對象關(guān)系映射這一模式,多角度巧妙封裝開發(fā)過程頻繁被使用的某些數(shù)據(jù)庫功能,不需要再根據(jù)實際情況,科學(xué)編寫SQL語句,便能進行一系列操作,比如,查詢Table news中id=1的記錄:
News news=DataSupport.find(News.class,1);
LitePal還具有多樣化特點,尤其是特別輕,其中的Jar包不到100k,配置幾乎為0,在LitePal框架作用下,大數(shù)據(jù)背景下復(fù)雜化的傳統(tǒng)數(shù)據(jù)庫操作得以簡化,工作人員不需要處理海量而繁雜的信息數(shù)據(jù),極大地提高了工作效率與質(zhì)量,信息數(shù)據(jù)準確率以及利用率明顯提高。
在Android作用下,開發(fā)人員需要全方位客觀分析新時期開源數(shù)據(jù)庫框架:LitePal應(yīng)用具體要求,根據(jù)LitePal內(nèi)涵、性質(zhì)、特征等,對其進行合理化利用,充分發(fā)揮多樣化作用。開發(fā)人員需要先從實際出發(fā),根據(jù)Android開源數(shù)據(jù)庫框架LitePal的應(yīng)用各方面實際情況,科學(xué)引入Jar包,即以項目為基點,根據(jù)LitePal中Jar包多樣化特征,將其巧妙應(yīng)用其中。在此過程中,開發(fā)人員需要科學(xué)下載LitePal下的Jar包,并將其合理復(fù)制到項目libs目錄,Jar包引入也就順利完成。在litepal.xml配置過程中,開發(fā)人員需要根據(jù)項目assets目錄具體情況,嚴格按照相關(guān)要求,科學(xué)創(chuàng)建關(guān)于litepal.xml的文件,創(chuàng)建好之后,要根據(jù)代碼輸入要求,進行合理化輸入。就litepal.xml文件而言,配置難度并不大,沒有較多的技術(shù)含量,數(shù)據(jù)庫名字設(shè)置過程中,開發(fā)人員可以巧妙利用 <dbname>,而數(shù)據(jù)庫“版本號、映射模型”的設(shè) 置 也 需 要 分 別 用 到 <version>、<list>。 在LitePalApplication配置方面,由于數(shù)據(jù)庫操作過程中需要優(yōu)化利用Context[8],這就需要各個接口都傳輸相同的參數(shù),會讓數(shù)據(jù)庫操作變得復(fù)雜化。針對這種情況,開發(fā)人員需要多層次優(yōu)化利用LitePal,客觀分析AndroidManifest.sml運行情況,科學(xué)配置LitePalApplication,科學(xué)簡化Context參數(shù),也就是說,在操作數(shù)據(jù)庫過程中,操作人員不需要傳輸Context這一參數(shù),而且整個配置過程并不復(fù)雜,配置步驟不多。在應(yīng)用Android開源數(shù)據(jù)庫框架LitePal過程中,對象關(guān)系映射模式被應(yīng)用其中[7]。此外,在應(yīng)用該數(shù)據(jù)框架過程中,開發(fā)人員需要全面、客觀分析對象關(guān)系映射模式理念,在LitePal中科學(xué)創(chuàng)建庫表,所創(chuàng)建的表都必須有與之對應(yīng)的模型,即Model。以“course表”為例,在創(chuàng)建過程中,開發(fā)人員需要根據(jù)該類表創(chuàng)建要求以及創(chuàng)建重難點,構(gòu)建合理化的course模型類,進行相關(guān)操作,便能自動化生成“Get、Set”。在構(gòu)建好“course 模型類”之后,開發(fā)人員需要在對應(yīng)的映射列表中進行合理化配置,借助assets目錄,科學(xué)編制litepal.xml文件,并將course模型類聲明科學(xué)添加到對應(yīng)的<list>標(biāo)簽中,便可以根據(jù)工作具體要求,對數(shù)據(jù)庫進行各方面的操作,自動化創(chuàng)建course表。在操作course表過程中,開發(fā)人員只需要合理化調(diào)用course.savecourse.find等,便可以實時“保存、查詢”表格。更為重要的是:在應(yīng)用Android開源數(shù)據(jù)庫框架LitePal過程中,程序人員即使不精通關(guān)系型數(shù)據(jù)庫,也可以很好地進行相關(guān)操作,不需要準確把握數(shù)據(jù)庫難度較高的SQL語言,數(shù)據(jù)庫操作也變得更加簡單化。
總而言之,在經(jīng)濟發(fā)展的浪潮中,我國必須站在客觀的角度,運用發(fā)展的眼光,全方位正確認識Android開源數(shù)據(jù)庫框架LitePal的使用。在應(yīng)用過程中,開發(fā)人員要全方位客觀分析Android系統(tǒng)內(nèi)涵、性質(zhì)、特點,特別是應(yīng)用情況以及重要性,借助Android系統(tǒng),優(yōu)化傳統(tǒng)數(shù)據(jù)庫庫操作方式,準確掌握Android下開源數(shù)據(jù)框架LitePal詳細要求,優(yōu)化利用這一重要開源數(shù)據(jù)框架,充分發(fā)揮其多樣化作用,簡化繁雜的傳統(tǒng)數(shù)據(jù)庫操作,科學(xué)管理海量信息數(shù)據(jù),使其更好地作用到不同領(lǐng)域、行業(yè)中,使其準確把握大數(shù)據(jù)背景下的發(fā)展機遇,不斷向前發(fā)展,有效加快我國經(jīng)濟發(fā)展步伐。
銅陵職業(yè)技術(shù)學(xué)院學(xué)報2018年4期