freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于j2me手機(jī)網(wǎng)絡(luò)商店的設(shè)計(jì)與實(shí)現(xiàn)(客戶端的開發(fā))-閱讀頁

2025-07-03 16:16本頁面
  

【正文】 L 寫法比較簡單,而且非常便于人來閱讀。隨著內(nèi)存和處理器的提高,對 第 13 頁 共 26 頁 XML 的支持成為了可能。 幸運(yùn)的是有第三方的 API 對解析 xml 提供了支持,比較有名的是 kxml 和 nanoxml。 使用 XML 之前,你必須考慮好是不是必須用它來傳輸數(shù)據(jù),因?yàn)榻馕?xml 是 比較耗費(fèi)資源的,尤其是在 CPU 和內(nèi)存的資源都很寶貴的條件下。 的 XML 解析器有兩種,一種是確認(rèn)性的,他在解析之前會對 xml 的文檔進(jìn)行有效性的驗(yàn) 證,確保這是應(yīng)用程序需要的。kxml 和 nanoxml 都是這樣的解析器。nanoxml 是一步解析器,一次就把文檔解析完,如果文檔很大的話, 這無疑會耗費(fèi)很大的內(nèi)存。 XmlParser parser = new XmlParser( r )。 ByteArrayInputStream bin =new ByteArrayInputStream( () )。 當(dāng)從網(wǎng)上接收數(shù)據(jù)的時候可以這樣: HttpConnection conn = ……。 XmlParser parser = new XmlParser( doc )。 while( keepParsing ){ ParseEvent event = ()。 case : …… // handle end of an XML tag break。 case : …… // handle whitespace break。 case : …… // handle XML PI break。 case : …… // end of document。 break。 這樣我們就可以解析一個 XML 文檔了, 而就本程序來說我們需要做的首先是 將 XML 文檔發(fā)送給服務(wù)器, 在服務(wù)器端接收以后需要通過解析器將 XML 文檔解析 出來,以下給出發(fā)送 XML 文檔的代碼: HttpConnection Connection = (HttpConnection) Connector 第 15 頁 共 26 頁 .open(:8080/jinboservlet)。 DataOutputStream dos = null。 textXml = textXml+courses。 textXml = textXml + /courses。 dos = ()。 當(dāng)服務(wù)器的數(shù)據(jù)處理完了以后就需把需要返回給客戶端的信息發(fā)送給客戶 端,而客戶端需要做的就是將數(shù)據(jù)解析出來,以下給出解析 XML 的重要代碼: KXmlParser parser = new KXmlParser()。 ()。 while (() != ) readCourses(parser)。 ()。 } catch (Exception e) { ()。 textXml = ?xml version = 39。 encoding = 39。?。 String description = null。 String name = ()。 ( + name + + text)。 else if ((name)) (text)。 else if ((price)) (text)。 else if ((data)) (text)。 }(, null, course)。 ().setCurrenzhucd)。amp。 ().setCurrent(ss1)。 DengluThread t = new DengluThread(url, (), 第 17 頁 共 26 頁 ())。} 圖 9 登陸界面 圖 10 錯誤顯示界面 注冊系統(tǒng)實(shí)現(xiàn) 一個新用戶,如果想要購買商品那么最先需要做的就是注冊成會員,因此我 們做了一個完整的用戶注冊系統(tǒng),只要您的用戶名沒有被其它人注冊過那么您就 可以成功注冊,圖 11 就是本程序的用戶注冊界面程序會根據(jù)不同的情況給用戶返 回信息如果您注冊成功那么會看到圖 12 的注冊失敗信息,如果沒有成功也可以就 會看到圖 13 的注冊成功的信息了。 public UpDataUserDataThread(String url, String id, String pw) { = url + ?id= + id + amp。 (準(zhǔn)備連接 + url)。 HttpConnection c = null。 OutputStream os = null。 try { c = (HttpConnection) (url)。 is = ()。 line = ()。 } catch (EOFException e) { (接收到的響應(yīng): + line)。 Alert al = new Alert(更新時期發(fā)生錯誤, (), null,)。 ().setCurrent(al)。 if (os != null)()。} catch (Exception e) {} if (!error) {Alert al = new Alert(“”, line, null, )。 ().setCurrent(al)。 下面給出主要的功能代碼 : public ResultScreen(String rename, String table) {super(查詢顯示)。 = table。displayShopInfo()。} catch (Exception e) {()。 DHScreen dhScreen = new DHScreen(sa)。 } else if (() == ) { Goumai ss = new Goumai()。}} public void displayShopInfo() {Thread thread = new Thread() { public void run() {try {updateShopInfo()。 ()。 String requestString = amp。table= + table。OutputStream oStrm = null。 DataOutputStream dos = null。// 發(fā)數(shù)據(jù) try {con = (requestString)。if (con != null) (connect sucess)。 oStrm = ()。 dis = new DataInputStream(iStrm)。 line = ()。xianshi(line)。}} 圖 14 查詢界面 1 圖 15 查詢界面 2 圖 16 查詢結(jié)果界面 購買系統(tǒng)實(shí)現(xiàn) 當(dāng)用戶查詢完了以后,發(fā)現(xiàn)了自己喜歡的商品就會去購買,而這個部分就是 實(shí)現(xiàn)了用戶購買功能,圖 17 是購買系統(tǒng)的界面需要用戶輸入商品的 ID 號和購買 的數(shù)量然后和服務(wù)器進(jìn)行聯(lián)網(wǎng)進(jìn)行相關(guān)操作把,在數(shù)據(jù)庫內(nèi)將商品的數(shù)量更新。 以下是購買系統(tǒng)的重要功能代碼: public void goumai() {Thread thread = new Thread() {public void run() { try {lianjie()。}}}。} private void lianjie() throws IOException, EOFException { HttpConnection conn = null。 try {ID = ()。 conn=(HttpConnection) 第 21 頁 共 26 頁 (://localhost:8080/servlet/PurchaseServlet + ? + ID= + ID + amp。 dis = new DataInputStream(())。 OkScreen ss = new OkScreen(line)。 (line)。 }finally {if (conn != null)()。}} public void mandAction(Command c, Displayable displayable) { ID = ()。 if (() == ) { if (() != 0 amp。 () != 0) {goumai()。一開始不知道怎么樣 去做,看了比較多的實(shí)例,很簡單,但很能說明問題。還有一些 Displayable 對像。 即可將當(dāng) Displayable 實(shí)例加入當(dāng)前的屏幕。主程序中定義了一個 display,則要在另一個屏幕(我姑且把它稱 第 22 頁 共 26 頁 之為目標(biāo)屏幕)中引用到主程序的 display。 ().setCurrent(ss)?!?這條語句,就是把 ss 在當(dāng)前的屏幕中顯示出來!這樣就可以看到 Goumai 中定義 的各個元素了! 事件處理機(jī)制 在 MIDP 中分高級事件處理和低級事件處理,前者主要是針對高級 UI,而后者 主要是這對 Canvas 這樣的低級 UI 的。 第二類問題,是我在設(shè)計(jì)查詢界面的時候遇到的,在設(shè)計(jì)這個 ChoiceGroup 組件的時候,我的想法是有一個跳出式菜單供用戶來選擇,在 ChoiceGroup 組件 的樣式中 POP 樣式實(shí)現(xiàn)了這個功能,但是用戶所選擇的內(nèi)容,程序不能傳遞給下 一個屏幕,看了很多相關(guān)的資料,才知道犯了一個致命的錯誤,就是將 ChoiceGroup 的監(jiān)聽設(shè)置在 CommandListener 中了,但是 ChoiceGroup 的狀態(tài)改 變是由 ItemStateListener 來控制的,了解到了這個問題就解決了。 在 CommandListener 中 定 義 了 方 法 mandAction(Command cmd,Displayable disp),我們必須實(shí)現(xiàn)這個方法來完成事件處理,告訴應(yīng)用程序當(dāng)在 disp 界面下 如果 cmd 按鈕并按下的時候他應(yīng)該去做什么。用戶在進(jìn)行如下操作的時候都會觸發(fā)這樣的事件,調(diào)整交 互 性 Guage 在 TextField 內(nèi) 輸 入 或 者 修 改 內(nèi) 容 、 修 改 DateField 、 改 變 ChoiceGroup 的狀態(tài)。雖然大學(xué)期間 在 Delphi 下設(shè)計(jì)過一些程序,并且反復(fù)的調(diào)試修改過,但接手這個題目時仍感覺 十分棘手。 憑著探索新 知識的熱情,我選擇了該設(shè)計(jì)題目。在設(shè)計(jì)初期,為了搭建平臺,需要花費(fèi)好幾天的時間,為了使屏 幕看起來相對美觀又會花費(fèi)幾天的努力。更為困難的 是,J2ME 為一種剛出現(xiàn)僅幾年的新技術(shù),國內(nèi)的參考資料非常少,僅有的幾本也 停留在簡單的介紹階段。在發(fā)覺中文資料的稀少后,為了進(jìn)一步探 索深層次的技巧,我花費(fèi)了大量時間在 j2me 的 API 上。 我原以為這樣的速度將無法完成畢業(yè)設(shè)計(jì),但當(dāng)掌握了大部分應(yīng)用技巧時, 剩下的程序思路的設(shè)計(jì)就顯得不是最大的障礙了。 參考文獻(xiàn) [1] 耿祥義, 實(shí)用教程[M].北京:清華大學(xué)出版社, [2] 網(wǎng)絡(luò)應(yīng)用編程入門[M].北京:人民郵電出版社, [3] 數(shù)據(jù)庫企業(yè)應(yīng)用系統(tǒng)開發(fā)[M].北京:清華大學(xué)出版社, [4] 莊東, 無線應(yīng)用開發(fā)[M].北京:電子工業(yè)出版社, [5] 無線通信實(shí)用案例教程[M].北京:清華大學(xué)出版社, [6] 手機(jī)程序設(shè)計(jì)[M].北京:中國鐵道出版社, 第 24 頁 共 26 頁 致 謝 本文是在何林波老師的熱情關(guān)心和指導(dǎo)下完成的, 他淵博的知識和嚴(yán)謹(jǐn)?shù)闹?學(xué)態(tài)度使我受益匪淺,對順利完成本課題起到了極大的作用。 文中除了特別加以標(biāo)注地方外, 不包含他人已經(jīng)發(fā)表或撰寫過的研究成果, 也不包含為獲得信息工程學(xué)院或其他教學(xué)機(jī)構(gòu)的學(xué)位或證書而使用過的材料。 關(guān)于學(xué)位論文使用權(quán)和研究成果知識產(chǎn)權(quán)的說明: 本人完全了解信息工程學(xué)院有關(guān)保管使用學(xué)位論文的規(guī)定,其中包括: (1)學(xué)校有權(quán)保管并向有關(guān)部門遞交學(xué)位論文的原件與復(fù)印件。 (3)學(xué)校可以學(xué)術(shù)交流為目的復(fù)制、贈送和交換學(xué)位論文。 (5)學(xué)??梢怨紝W(xué)位論文的全部或部分內(nèi)容(保密學(xué)位論文在解密后遵 守此規(guī)定) 。 特此聲明! 第 26 頁 共 26
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1