后台返回的Json:
{"indicator":[{"YEAR":"1980","DATA":"-11.97"},{"YEAR":"1981","DATA":"-5.642"},{"YEAR":"1982","DATA":"7.738"},{"YEAR":"1983","DATA":"7.966"},{"YEAR":"1984","DATA":"7.903"},{"YEAR":"1985","DATA":"9.667"},{"YEAR":"1986","DATA":"17.621"},{"YEAR":"1987","DATA":"10.311"},{"YEAR":"1988","DATA":"12.455"},{"YEAR":"1989","DATA":"6.525"},{"YEAR":"1990","DATA":"4.97"},{"YEAR":"1991","DATA":"5.476"},{"YEAR":"1992","DATA":"0.526"},{"YEAR":"1993","DATA":"-0.724"},{"YEAR":"1994","DATA":"1.277"},{"YEAR":"1995","DATA":"3.974"},{"YEAR":"1996","DATA":"3.319"},{"YEAR":"1997","DATA":"1.5"},{"YEAR":"1998","DATA":"6.669"},{"YEAR":"1999","DATA":"6.244"},{"YEAR":"2000","DATA":"1.866"},{"YEAR":"2001","DATA":"3.365"},{"YEAR":"2002","DATA":"2.648"},{"YEAR":"2003","DATA":"4.37"},{"YEAR":"2004","DATA":"6.038"},{"YEAR":"2005","DATA":"5.591"},{"YEAR":"2006","DATA":"6.501"},{"YEAR":"2007","DATA":"7.221"},{"YEAR":"2008","DATA":"0"},{"YEAR":"2009","DATA":"0"},{"YEAR":"2010","DATA":"0"}]}
Flex文件代码:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="indicatorjson.send()">
<fx:Declarations>
<mx:HTTPService id="indicatorjson" url="http://localhost:8080/FlexJava/IndicatorInfoJson" resultFormat="array" result="onJSONLoad(event)" />
</fx:Declarations>
<fx:Script>
<![CDATA[
import com.adobe.serialization.json.*;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.rpc.xml.SimpleXMLDecoder;
private var dp:ArrayCollection;
private function onJSONLoad(event:ResultEvent):void {
var response:String = indicatorjson.lastResult.toString();
var container:Object = (JSON.decode(response) as Object);
Alert.show(container.toString());
dp = new ArrayCollection(container.indicator);
linechart.dataProvider = dp;
for(var i:int = 0; i< dp.length; i++) {
var o:Object = dp.getItemAt(i);
//Alert.show(o.YEAR);
//Alert.show(o.DATA);
}
}
]]>
</fx:Script>
<mx:Panel width="739" layout="absolute" height="252" x="26" y="9">
<mx:LineChart id="linechart" height="100%" width="711"
paddingLeft="5" paddingRight="5"
showDataTips="true" x="0" y="0">
<mx:horizontalAxis>
<mx:CategoryAxis categoryField="YEAR"/>
</mx:horizontalAxis>
<mx:series>
<mx:LineSeries yField="DATA" form="curve" displayName="Profit"/>
</mx:series>
</mx:LineChart>
</mx:Panel>
</s:Application>