物聯(lián)網(wǎng)系列專業(yè)課程:Andriod事件、數(shù)據(jù)、網(wǎng)絡(luò)_第1頁(yè)
物聯(lián)網(wǎng)系列專業(yè)課程:Andriod事件、數(shù)據(jù)、網(wǎng)絡(luò)_第2頁(yè)
物聯(lián)網(wǎng)系列專業(yè)課程:Andriod事件、數(shù)據(jù)、網(wǎng)絡(luò)_第3頁(yè)
物聯(lián)網(wǎng)系列專業(yè)課程:Andriod事件、數(shù)據(jù)、網(wǎng)絡(luò)_第4頁(yè)
物聯(lián)網(wǎng)系列專業(yè)課程:Andriod事件、數(shù)據(jù)、網(wǎng)絡(luò)_第5頁(yè)
已閱讀5頁(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)介

Android事件、數(shù)據(jù)、網(wǎng)絡(luò)中智訊〔武漢〕科技Android事件處理Android數(shù)據(jù)處理Android網(wǎng)絡(luò)通信Android提供了強(qiáng)大的事件處理機(jī)制,在事件處理機(jī)制中將事件分為了基于監(jiān)聽(tīng)的事件處理和基于回調(diào)的事件處理。Android事件處理監(jiān)聽(tīng)事件回調(diào)事件單擊事件焦點(diǎn)變更長(zhǎng)單擊事件上下文菜單按鍵事件觸摸事件………………繼承監(jiān)聽(tīng)接口捆綁xml方式內(nèi)部回調(diào)匿名回調(diào)Thread/Handler接口回調(diào)……AsyncTask觸發(fā)回調(diào)Android事件處理EventSource〔事件源〕:事件發(fā)生的來(lái)源。Event〔事件〕:UI上面的事件源發(fā)生的特定的事件。

EventListener〔事件監(jiān)聽(tīng)器〕:監(jiān)聽(tīng)事件源發(fā)生的事件,對(duì)被監(jiān)聽(tīng)的事件做出相應(yīng)響應(yīng)。監(jiān)聽(tīng)事件的實(shí)現(xiàn)過(guò)程無(wú)名類,通過(guò)new來(lái)創(chuàng)建監(jiān)聽(tīng)匿名類在類名中添加調(diào)用監(jiān)聽(tīng)接口Activity調(diào)用在layout中添加onclick事件綁定在class中創(chuàng)建一個(gè)監(jiān)聽(tīng)內(nèi)部類新建一個(gè)class調(diào)用監(jiān)聽(tīng)接口外部類外部類內(nèi)部類匿名類Activity調(diào)用事件綁定方法豐富、自由發(fā)揮!監(jiān)聽(tīng)事件的實(shí)現(xiàn)方法通過(guò)使用button標(biāo)簽的.setOnClickListener()方法,在.setOnClickListener()中new一個(gè)View.onClickListener配置監(jiān)聽(tīng)。匿名類實(shí)現(xiàn)通過(guò)在MainActivity的類中添加一個(gè)調(diào)用了監(jiān)聽(tīng)事件的事件監(jiān)聽(tīng)器,然后在onCreate()中添加Button內(nèi)部類處理事件響應(yīng)。內(nèi)部類實(shí)現(xiàn)寫(xiě)一個(gè)外部類并調(diào)用View.OnClickListener的接口,在外部類中寫(xiě)入開(kāi)放的監(jiān)聽(tīng)器事件接口。外部類實(shí)現(xiàn):外部類在使用寫(xiě)好的包含監(jiān)聽(tīng)器類時(shí)直接調(diào)用監(jiān)聽(tīng)器類中的方法即可,當(dāng)需要傳遞信息時(shí)可通過(guò)重寫(xiě)監(jiān)聽(tīng)器的構(gòu)造方法將數(shù)據(jù)傳遞到監(jiān)聽(tīng)類的事件中。外部類實(shí)現(xiàn):監(jiān)聽(tīng)器調(diào)用在建立的MainActivity并extendsActivity后ImplementOnClickListener。監(jiān)聽(tīng)類調(diào)用完成后系統(tǒng)會(huì)在MainActivity中自動(dòng)添加OnClick的方法,重寫(xiě)方法即可實(shí)現(xiàn)事件監(jiān)聽(tīng)。Activity監(jiān)聽(tīng)實(shí)現(xiàn)在對(duì)應(yīng)的Layout文件中的Button標(biāo)簽中添加android:onClick的屬性,并寫(xiě)入一個(gè)同名的方法名為后續(xù)監(jiān)聽(tīng)器提供接口。綁定事件實(shí)現(xiàn):在layout中添加onClick在MainActivity中添加在layout添加的onClick,并設(shè)置綁定的對(duì)應(yīng)事件函數(shù)。寫(xiě)對(duì)應(yīng)方法事件處理函數(shù),該方法必須是public

void的,并且必須接受一個(gè)View類型的參數(shù)才能正常使用。綁定事件實(shí)現(xiàn):調(diào)用onClick你餓了,想吃飯,就去問(wèn)你媽:“開(kāi)飯沒(méi)有啊?“。但是今天你媽包水餃,工序比較多花的時(shí)間比較長(zhǎng),離吃飯還遙遙無(wú)期。于是你給你媽說(shuō):“我先出去玩會(huì),開(kāi)飯的時(shí)候打告訴我一聲〞。等過(guò)了一陣,你媽給你打說(shuō):“開(kāi)飯啦,回來(lái)吃飯吧!“。于是你在收到消息后就回去吃飯了。在A類中定義了一個(gè)方法,這個(gè)方法中用到了一個(gè)接口和該接口中的抽象方法,但是抽象方法沒(méi)有具體的實(shí)現(xiàn),需要B類去實(shí)現(xiàn),B類實(shí)現(xiàn)該方法后,它本身不會(huì)去調(diào)用該方法,而是傳遞給A類,供A類去調(diào)用,這種機(jī)制就稱為回調(diào)。你媽喊你回家吃飯了!回調(diào)函數(shù)的實(shí)現(xiàn)過(guò)程回調(diào)函數(shù)的實(shí)現(xiàn)方法步驟一:定義回調(diào)接口步驟二:定義回調(diào)事件類步驟三:復(fù)寫(xiě)方法,觸發(fā)監(jiān)聽(tīng)步驟四:調(diào)用函數(shù)觸發(fā)監(jiān)聽(tīng)事件回調(diào)事件的使用原因回調(diào)事件的使用原因監(jiān)聽(tīng)事件回調(diào)異步任務(wù)回調(diào)Android是一個(gè)連續(xù)執(zhí)行的系統(tǒng),在系統(tǒng)中不能出現(xiàn)長(zhǎng)時(shí)間等待的代碼段,如果出現(xiàn),系統(tǒng)將會(huì)判定為超時(shí)操作,軟將執(zhí)行將會(huì)出錯(cuò)或停止。因此針對(duì)不確定執(zhí)行的代碼,通常采用回調(diào)函數(shù)處理。所以回調(diào)函數(shù)通常執(zhí)行在具有突發(fā)性操作的且具有不確定性結(jié)果的事件中,這類事件就屬于回調(diào)事件?;卣{(diào)事件使用原因與場(chǎng)景在Android軟件的開(kāi)發(fā)過(guò)程中通常不經(jīng)意的就使用到了回調(diào)事件,只是在使用的時(shí)候完全沒(méi)有覺(jué)察到正在使用回調(diào)函數(shù)。比方Button標(biāo)簽中的OnClick()的復(fù)寫(xiě)。監(jiān)聽(tīng)回調(diào):OnClickAsyncTask<>功能簡(jiǎn)要說(shuō)明:AsyncTask<>,是android提供的輕量級(jí)的異步類,可以直接繼承AsyncTask,在類中實(shí)現(xiàn)異步操作,并提供接口反響當(dāng)前異步執(zhí)行的程度(可以通過(guò)接口實(shí)現(xiàn)UI進(jìn)度更新),最后反響執(zhí)行的結(jié)果給UI主線程AsyncTask<>的使用包含3個(gè)重要參數(shù)和4個(gè)重要方法。Params、Progress、Result分別表示程序配置,執(zhí)行中,執(zhí)行后的參數(shù)類型。onPreExecute()異步任務(wù)執(zhí)行前系統(tǒng)會(huì)調(diào)用的回調(diào)函數(shù)。doInBackgruand()異步任務(wù)的任務(wù)調(diào)用入口,任務(wù)執(zhí)行時(shí)同時(shí)可設(shè)置返回參數(shù)。onProgressUpdate()異步任務(wù)執(zhí)行時(shí)調(diào)用,獲取doInBackgruand()返回參數(shù)。onPostExecte()異步任務(wù)執(zhí)行完成后調(diào)用,獲取doInBackgruand()執(zhí)行結(jié)果。異步任務(wù)回調(diào):AsyncTask<>異步任務(wù)回調(diào):AsyncTaskAsyncTask<>的使用分為四個(gè)步驟1243定義一個(gè)繼承AsyncTask<>的類執(zhí)行AsyncTask異步事件定義一個(gè)Interface類型的接口復(fù)寫(xiě)Interface中的接口函數(shù)異步任務(wù)回調(diào):AsyncTask步驟一步驟二步驟三步驟四1234異步任務(wù)回調(diào):AsyncTask步驟一步驟二步驟三步驟四1234異步任務(wù)回調(diào):AsyncTask步驟一步驟二步驟三步驟四1234異步任務(wù)回調(diào):AsyncTask步驟一步驟二步驟三步驟四1234Android事件處理Android數(shù)據(jù)處理Android網(wǎng)絡(luò)通信Android中數(shù)據(jù)處理主要分為開(kāi)發(fā)者個(gè)人的數(shù)據(jù)運(yùn)算解析和Android系統(tǒng)的數(shù)據(jù)存取方式兩種處理方式。在Android數(shù)據(jù)的運(yùn)算和分析時(shí)需要根據(jù)工程的實(shí)際需求調(diào)用數(shù)據(jù)處理方法,因此此局部重點(diǎn)講解數(shù)據(jù)存儲(chǔ)。Android中有很多需要存儲(chǔ)數(shù)據(jù)的場(chǎng)景,如:保存少量的數(shù)據(jù),且這些數(shù)據(jù)的格式非常簡(jiǎn)單:字符串型、根本類型的值。比方應(yīng)用程序的各種配置信息,解鎖口令密碼等;又如:較大量的數(shù)據(jù)存儲(chǔ),數(shù)據(jù)庫(kù)調(diào)用,數(shù)據(jù)分析等使用場(chǎng)合等。針對(duì)上述的數(shù)據(jù)存儲(chǔ)和使用場(chǎng)合,android系統(tǒng)提供了四種數(shù)據(jù)存儲(chǔ)方案。Android數(shù)據(jù)處理SharedPreferencesSQLite數(shù)據(jù)庫(kù)ContentProvider源文件存儲(chǔ)數(shù)據(jù)存儲(chǔ)方法通常Android的數(shù)據(jù)存儲(chǔ)有四種方法適用范圍:保存少量的數(shù)據(jù),且這些數(shù)據(jù)的格式非常簡(jiǎn)單:字符串型、根本類型的值。比方應(yīng)用程序的各種配置信息〔如是否翻開(kāi)音效、是否使用震動(dòng)效果、小游戲的玩家積分等〕,解鎖口令密碼等。

SharedPreferences本身是一個(gè)接口,程序無(wú)法直接創(chuàng)立SharedPreferences實(shí)例,只能通過(guò)Context提供的getSharedPreferences(Stringname,intmode)方法來(lái)獲取SharedPreferences實(shí)例,該方法中name表示要操作的xml文件名。SharePreferences方法SharePreferences使用時(shí)的翻開(kāi)模式:Context.MODE_PRIVATE:指定該SharedPreferences數(shù)據(jù)只能被本應(yīng)用程序讀、寫(xiě)。Context.MODE_WORLD_READABLE:

指定該SharedPreferences數(shù)據(jù)能被其他應(yīng)用程序讀,但不能寫(xiě)。Context.MODE_WORLD_WRITEABLE:

指定該SharedPreferences數(shù)據(jù)能被其他應(yīng)用程序讀,寫(xiě)。SharePreferences的關(guān)鍵屬性和方法SharePreferences的關(guān)鍵屬性和方法Editor有如下主要重要方法:SharedPreferences.Editorclear():清空SharedPreferences里所有數(shù)據(jù)SharedPreferences.EditorputXxx(Stringkey,xxxvalue):

向SharedPreferences存入指定key對(duì)應(yīng)的數(shù)據(jù),其中xxx可以是boolean,float,int等各種根本類型據(jù)SharedPreferences.Editorremove():

刪除SharedPreferences中指定key對(duì)應(yīng)的數(shù)據(jù)項(xiàng)booleancommit():

當(dāng)Editor編輯完成后,使用該方法提交修改SharePreferences的使用較為簡(jiǎn)單,在讀寫(xiě)操作前只需先配置緩存名稱和配置權(quán)限即可。再通過(guò).putString()和.getString()就可對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)和讀取。存儲(chǔ)數(shù)據(jù)讀取數(shù)據(jù)SharePreferences的使用方法Android系統(tǒng)中的源文件存儲(chǔ)方式可以在設(shè)備本身的存儲(chǔ)設(shè)備或者外接的存儲(chǔ)設(shè)備中創(chuàng)立用于保存數(shù)據(jù)的文件。源文件存儲(chǔ)方式的翻開(kāi)模式和SharePreferences方式類似,都存在私有、可讀、可寫(xiě)、可讀寫(xiě)等翻開(kāi)方式。同樣在默認(rèn)的狀態(tài)下,文件是不能在不同的程序間共享。源文件存儲(chǔ)使用時(shí)的翻開(kāi)模式:MODE_PRIVATE:為默認(rèn)操作模式,代表該文件是私有數(shù)據(jù),只能被應(yīng)用本身訪問(wèn),在該模式下,寫(xiě)入的內(nèi)容會(huì)覆蓋原文件的內(nèi)容,如果想把新寫(xiě)入的內(nèi)容追加到原文件中??梢允褂肅ontext.MODE_APPENDMODE_APPEND:模式會(huì)檢查文件是否存在,存在就往文件追加內(nèi)容,否那么就創(chuàng)立新文件。MODE_WORLD_READABLE:表示當(dāng)前文件可以被其他應(yīng)用讀取;MODE_WORLD_WRITEABLE:表示當(dāng)前文件可以被其他應(yīng)用寫(xiě)入。源文件存儲(chǔ)方法核心原理:Context提供了兩個(gè)方法來(lái)翻開(kāi)數(shù)據(jù)文件里的文件IO流FileInputStreamopenFileInput(Stringname);FileOutputStream(Stringname,intmode),這兩個(gè)方法第一個(gè)參數(shù)用于指定文件名,第二個(gè)參數(shù)指定翻開(kāi)文件的模式。除此之外,Context還提供了如下幾個(gè)重要的方法:getDir(Stringname,intmode):在應(yīng)用程序的數(shù)據(jù)文件夾下獲取或者創(chuàng)立name對(duì)應(yīng)的子目錄。FilegetFilesDir():獲取該應(yīng)用程序的數(shù)據(jù)文件夾得絕對(duì)路徑。String[]fileList():返回該應(yīng)用數(shù)據(jù)文件夾的全部文件

。源文件存儲(chǔ)的屬性和方法檢測(cè)文件是否存在并向文件寫(xiě)入信息讀取文件信息源文件方式讀寫(xiě)文件SQLite數(shù)據(jù)庫(kù)Android系統(tǒng)集成了一個(gè)輕量級(jí)的數(shù)據(jù)庫(kù):SQLite,SQLite是一個(gè)嵌入式的數(shù)據(jù)庫(kù)引擎,專門(mén)使用與資源有限的設(shè)備上適量數(shù)據(jù)存取。SQLite數(shù)據(jù)庫(kù)是一個(gè)置于Android系統(tǒng)中的文件,不需要安裝、啟動(dòng)效勞進(jìn)程。Android提供了SQLiteDatebase類代表一個(gè)數(shù)據(jù)庫(kù),使用過(guò)程中一旦程序獲得了制定數(shù)據(jù)庫(kù)的SQLiteDatebase對(duì)象,接下來(lái)就可以管理和操作數(shù)據(jù)庫(kù)。SQLite數(shù)據(jù)庫(kù)具有很強(qiáng)的移植性,可以運(yùn)行在Windows,Linux,BSD,MacOSX和一些商用Unix系統(tǒng),比方Sun的Solaris,IBM的AIX。SQLite數(shù)據(jù)庫(kù)也可以工作在許多嵌入式操作系統(tǒng)下,例如QNX,VxWorks,PalmOS,Symbin和WindowsCE。SQLite的核心大約有3萬(wàn)行標(biāo)準(zhǔn)C代碼,模塊化的設(shè)計(jì)使這些代碼更加易于理解。SQLite的使用方法數(shù)據(jù)操作是指對(duì)數(shù)據(jù)的添加、刪除、查找和更新的操作,通過(guò)執(zhí)行SQL命名完成數(shù)據(jù)操作,但推薦使用Android提供的專用類和方法,這些類和方法更加簡(jiǎn)潔、易用。為了使DBAdapter類支持對(duì)數(shù)據(jù)的添加、刪除、更新和查找等功能,在DBAdapter類中增加下面的這些函數(shù):insert(Peoplepeople)用來(lái)添加一條數(shù)據(jù);queryAllData()用來(lái)獲取全部數(shù)據(jù);queryOneData(longid)根據(jù)id獲取一條數(shù)據(jù);deleteAllData()用來(lái)刪除全部數(shù)據(jù);deleteOneData(longid)根據(jù)id刪除一條數(shù)據(jù);updateOneData(longid,Peoplepeople)根據(jù)id更新一條數(shù)據(jù)。數(shù)據(jù)庫(kù)創(chuàng)立完成,getData()為導(dǎo)入數(shù)據(jù)庫(kù)的內(nèi)容!SQLite的使用:創(chuàng)立數(shù)據(jù)庫(kù)創(chuàng)立數(shù)據(jù)庫(kù):通過(guò)調(diào)用execSQL(param)創(chuàng)立數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)格式右param確定,數(shù)據(jù)庫(kù)創(chuàng)立完成后可通過(guò)調(diào)用saveSomeDatas()將數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)中。數(shù)據(jù)庫(kù)常用操作有添加紀(jì)錄、更新記錄、刪除記錄、查詢信息等。SQLite的使用:常用操作ContentProvider方法ContentProvider〔數(shù)據(jù)提供者〕是在應(yīng)用程序間共享數(shù)據(jù)的一種接口機(jī)制,ContentProvider提供了更為高級(jí)的數(shù)據(jù)共享方法,應(yīng)用程序可以指定需要共享的數(shù)據(jù),而其他應(yīng)用程序那么可以在不知數(shù)據(jù)來(lái)源、路徑的情況下,對(duì)共享數(shù)據(jù)進(jìn)行查詢、添加、刪除和更新等操作。創(chuàng)立ContentProvider:程序開(kāi)發(fā)人員通過(guò)繼承ContentProvider類可以創(chuàng)立一個(gè)新的數(shù)據(jù)提供者,過(guò)程可以分為三步:繼承ContentProvider,并重載六個(gè)函數(shù);聲明CONTENT_URI,實(shí)現(xiàn)UriMatcher;注冊(cè)ContentProvider;ContentProvider的屬性和方法步驟一:繼承ContentProvider,并重載六個(gè)函數(shù);delete():刪除數(shù)據(jù)集;insert():添加數(shù)據(jù)集;qurey():查詢數(shù)據(jù)集;update():更新數(shù)據(jù)集;onCreate():初始化底層數(shù)據(jù)集和建立數(shù)據(jù)連接等工作;getType():返回指定URI的MIME數(shù)據(jù)類型,如果URI是單條數(shù)據(jù),那么返回的MIME數(shù)據(jù)類型應(yīng)以vnd.android.cursor.item開(kāi)頭,如果URI是多條數(shù)據(jù),那么返回的MIME數(shù)據(jù)類型應(yīng)以vnd.android.cursor.dir/開(kāi)頭。ContentProvider的屬性和方法步驟二:聲明CONTENT_URI,實(shí)現(xiàn)UriMatcher;在新構(gòu)造的ContentProvider類中,通過(guò)構(gòu)造一個(gè)UriMatcher,判斷URI是單條數(shù)據(jù)還是多條數(shù)據(jù)。為了便于判斷和使用URI,一般將URI的授權(quán)者名稱和數(shù)據(jù)路徑等內(nèi)容聲明為靜態(tài)常量,并聲明CONTENT_URI。ContentProvider的屬性和方法步驟三:注冊(cè)ContentProvider;在完成ContentProvider類的代碼后,需要在AndroidManifest.xml文件下進(jìn)行注冊(cè)。注冊(cè)ContentProvider使用<ContentProvider>標(biāo)簽。ContentProvider的屬性和方法使用ContentProvider是通過(guò)Android組件都具有的ContentResolver對(duì)象,通過(guò)URI進(jìn)行數(shù)據(jù)操作。程序開(kāi)發(fā)人員只需要知道URI和數(shù)據(jù)集的數(shù)據(jù)格式,那么可以進(jìn)行數(shù)據(jù)操作,解決不同應(yīng)用程序之間的數(shù)據(jù)共享問(wèn)題。每個(gè)Android組件都具有一個(gè)ContentResolver對(duì)象,獲取ContentResolver對(duì)象的方法是調(diào)用getContentResolver()函數(shù)。ContentProvider的屬性和方法ContentProvider的使用ContentProvider在操作前需要建立類似于SQLite的數(shù)據(jù)庫(kù)并更新內(nèi)容,建立數(shù)據(jù)庫(kù)后可以對(duì)數(shù)據(jù)庫(kù)的內(nèi)容進(jìn)行操作。ContentProvider的使用ContentProvider有4個(gè)操作,這四個(gè)操作分別為查詢、添加、更新、刪除,分別對(duì)應(yīng)一個(gè)方法,這四個(gè)方法是用代碼如下:query(Uriuri,String[]projection,Stringselection,String[]selectionArgs,StringsortOrder)

通過(guò)Uri進(jìn)行查詢,返回一個(gè)Cursorinsert(Uriurl,ContentValuesvalues)

將一組數(shù)據(jù)插入到Uri指定的地方update(Uriuri,ContentValuesvalues,Stringwhere,String[]selectionArgs)

更新Uri指定位置的數(shù)據(jù)delete(Uriurl,Stringwhere,String[]selectionArgs)

刪除指定Uri并且符合一定條件的數(shù)據(jù)ContentProvider的使用ContentProvider的query()的使用:ContentProvider的insert()的使用:ContentProvider的使用ContentProvider的update()的使用:ContentProvider的使用ContentProvider有delete()的使用:ContentProvider的使用Android事件處理Android數(shù)據(jù)處理Android網(wǎng)絡(luò)通信無(wú)線網(wǎng)絡(luò)開(kāi)展的速度非常迅猛。有了無(wú)線網(wǎng)絡(luò)的支持,我們就不必受時(shí)間和空間的限制,可以隨時(shí)隨地進(jìn)行數(shù)據(jù)交換,瀏覽Internet,第一時(shí)間獲取新聞。隨著人們認(rèn)知水平的提高,生活圈子越來(lái)越廣,人們需要網(wǎng)絡(luò)的幫助來(lái)處理一些事物,比方炒股、證劵、銀行、地圖等,而在Android中,掌握了網(wǎng)絡(luò)通信便可以開(kāi)發(fā)出這些優(yōu)秀的網(wǎng)絡(luò)應(yīng)用。接下來(lái)我們將會(huì)講解android的網(wǎng)絡(luò)編程開(kāi)發(fā)及輕量級(jí)效勞器的部署和使用。Android網(wǎng)絡(luò)通信HTTP協(xié)議可能是現(xiàn)在Intenet上使用得最多、最重要的通信協(xié)議了。越來(lái)越多的Java應(yīng)用程序需要通過(guò)HTTP協(xié)議來(lái)訪問(wèn)網(wǎng)絡(luò)資源。雖然在JDK的包中已經(jīng)提供了訪問(wèn)HTTP協(xié)議的根本功能,但是對(duì)于大局部應(yīng)用程序來(lái)說(shuō),JDK庫(kù)本身提供的功能遠(yuǎn)遠(yuǎn)不夠。這時(shí)就需要Android提供的ApacheHttpClient了。它是一個(gè)開(kāi)源工程,功能更加完善,為客戶端的HTTP編程提供了高效、最新、功能豐富的工具包支持。Android平臺(tái)引入了ApacheHttpClient的同時(shí)還提供了對(duì)它的一些封裝和擴(kuò)展,例如設(shè)置默認(rèn)的HTTP超時(shí)和緩存大小等。Tomcat效勞器的介紹找到JspStudy.rar到的壓縮包,將其解壓到桌面。再找到JspStudy2023.exe并以管理員身份運(yùn)行,將文件默認(rèn)安裝。安裝成功后在桌面上找到JspStudy圖標(biāo),并以管理員執(zhí)行JspStudy。JspStudy工具啟動(dòng)后點(diǎn)擊啟動(dòng)按鈕,當(dāng)左側(cè)運(yùn)行狀態(tài)中Apache、Tomcat、MySQL均顯示為綠點(diǎn)時(shí),那么Tomcat啟動(dòng)成功。Tomcat效勞器的安裝為驗(yàn)證Tomcat是否部署成功,需要對(duì)Tomcat工具進(jìn)行驗(yàn)證,驗(yàn)證方法如下步驟一:首先將用戶頁(yè)面文件oof(與JspStudy工具包存放在同一位置)復(fù)制,再找到JspStudy的安裝路徑,在安裝路徑中找到JspStudy\tomcat\webapps位置,并將復(fù)制的內(nèi)容粘貼到該位置。步驟二:翻開(kāi)JspStudy工具并啟動(dòng)效勞。步驟三:在網(wǎng)頁(yè)中輸入://localhost:8080/foo/haibao.jpg,如果出現(xiàn)海寶圖片那么說(shuō)明TomCat部署成功。Tomcat效勞器的安裝測(cè)試HTTP通信超文本協(xié)議〔HTTP,HyperTextTransferProtocol〕是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議。Http定義了瀏覽器〔即萬(wàn)維網(wǎng)客戶進(jìn)程〕怎樣向萬(wàn)維網(wǎng)效勞器請(qǐng)求萬(wàn)維網(wǎng)文檔,以及效勞器怎么把文檔傳給瀏覽器。Http是萬(wàn)維網(wǎng)可靠的交換文件〔包括文本、圖像、聲音、以及視頻等〕的根底。HTTP通信步驟工作流程:一次的Http請(qǐng)求成為一次事務(wù),其工作流程可以分為四步:首先客戶端和效勞器需要建立連接。這個(gè)是從客戶端發(fā)起的。建立連接之后,客戶端發(fā)送一個(gè)請(qǐng)求給效勞器,請(qǐng)求方式的格式為:統(tǒng)一資源定位符〔URL〕、協(xié)議版本號(hào)、后邊是MIME的信息〔請(qǐng)求的是文本、圖像、聲音、視頻〕包括請(qǐng)求修飾符、客戶端的信息以及可能的內(nèi)容。效勞器接到請(qǐng)求后,基于相應(yīng)的響應(yīng)信息,其格式為一個(gè)狀態(tài)行、包括信息的協(xié)議版本號(hào)、一個(gè)成功或者錯(cuò)誤的代碼、后邊是MIME信息包括效勞器信息,實(shí)體信息以及一些可能的內(nèi)容??蛻舳私邮艿叫谄鞫朔祷氐男畔⒅?,根據(jù)需要將信息展示出來(lái),然后斷開(kāi)與效勞器的連接。HTTP通訊使用方式較為簡(jiǎn)單,首先配置需要訪問(wèn)的網(wǎng)址,配置完成后通過(guò)使用

溫馨提示

  • 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)論