Flex數(shù)據(jù)訪問和綁定概述
在學(xué)習(xí)Flex的過程中,難免會遇到Flex數(shù)據(jù)訪問和綁定問題,這里和大家分享一下他們的概念,F(xiàn)lex使你能在客戶端匯集信息,并提供三種不同的數(shù)據(jù)服務(wù)組件,以滿足對服務(wù)提供者進行特定Flex數(shù)據(jù)訪問的需求。
Flex數(shù)據(jù)訪問
MacromediaFlex為面向服務(wù)器架構(gòu)(SOA–service-orientedarchitecture)而開發(fā)。在這一模型中,應(yīng)用通過與分散在不同地方的服務(wù)進行交互,來完成自己的任務(wù)。例如,如果創(chuàng)建一個在線旅行應(yīng)用,你需要與不同的服務(wù)進行交互:全球旅館預(yù)定服務(wù),目的信息服務(wù),天氣服務(wù)等等。這些服務(wù)可能以不同的機制來提供,并且來自不同的地方。Flex使你能在客戶端匯集信息,并提供三種不同的數(shù)據(jù)服務(wù)組件,以滿足對服務(wù)提供者進行特定Flex數(shù)據(jù)訪問的需求:WebService組件,HTTPService組件(一般使用XML通過HTTP進行Flex數(shù)據(jù)訪問)以及RemoteObject組件。MXML允許你用相應(yīng)的WebService,HTTPService,andRemoteObject標(biāo)簽來設(shè)置與服務(wù)的連接。
Flex數(shù)據(jù)綁定
在許多語言中,如何在用戶界面控件中顯示后臺數(shù)據(jù),是件令人頭疼的事情,而且非常容易出錯。收集用戶在控件中輸入的數(shù)據(jù),并傳給遠(yuǎn)程服務(wù)也常常是件乏味的事情。
Flex的特色之一,就是提供了雙向的Flex數(shù)據(jù)綁定機制:你可以將用戶界面控件綁定到服務(wù)調(diào)用的數(shù)據(jù)結(jié)果集上,反過來,也可以將服務(wù)的參數(shù)綁定到用戶界面控件輸入的值上。
下面是一個簡單的股票報價應(yīng)用。例子使用了WebService標(biāo)簽來設(shè)置與XMMethods提供的股價web服務(wù)進行連接。這個例子闡明了Flex的雙向綁定功能。getQuote方法的symbol輸入?yún)?shù)被綁定到symbolTextInput組件上。quote標(biāo)簽被綁定到getQute方法的調(diào)用結(jié)果上。
- <?xmlversionxmlversion="1.0"encoding="iso-8859-1"?>
- <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.macromedia.com/2003/
- mxml">
- <mx:WebServiceidmx:WebServiceid="wsStock"
- wsdl="http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl">
- <mx:operationnamemx:operationname="getQuote">
- <mx:request>
- <symbol>{symbol.text}</symbol>
- </mx:request>
- </mx:operation>
- </mx:WebService>
- <mx:Labeltextmx:Labeltext="Enterasymbol:"/>
- <mx:HBox>
- <mx:TextInputidmx:TextInputid="symbol"/>
- <mx:Buttonlabelmx:Buttonlabel="GetQuote"click='wsStock.getQuote.send()'/>
- </mx:HBox>
- <mx:Labelidmx:Labelid="quote"fontWeight="bold">{wsStock.getQuote.result}</mx:Label>
- </mx:Application>
圖4.股價應(yīng)用
實際上,F(xiàn)lex數(shù)據(jù)綁定機制比傳統(tǒng)的重取/顯示(retrieve/display)方式更勝一籌:在Flex應(yīng)用中,你可以將任意對象的任意屬性綁定到另一任意對象的任意屬性值上。
【編輯推薦】
- 輕松實現(xiàn)Flex數(shù)據(jù)綁定
- 解析三種Flex數(shù)據(jù)訪問機制用法
- 三大方法實現(xiàn)Flex全屏
- 揭開Flex正則表達(dá)式的神秘面紗
- 技術(shù)分享 在Flex中嵌入Flex字體的步驟