首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

Flex与Servlet通讯 的简单计算器

2013-10-31 
Flex与Servlet通信 的简单计算器说明:前台供用户输入数字---传递到后台--进行计算---把结果传递到前台。

Flex与Servlet通信 的简单计算器
说明:
  前台供用户输入数字--->传递到后台-->进行计算--->把结果传递到前台。

mxml文件:

<?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"><fx:Declarations><!-- 将非可视元素(例如服务、值对象)放在此处 --><mx:HTTPService id="sevlet" resultFormat="e4x" result="resultHandler(event)"/></fx:Declarations><fx:Script><![CDATA[import mx.collections.ArrayCollection;import mx.controls.Alert;import mx.rpc.events.ResultEvent;var com:ArrayCollection = new ArrayCollection(["+","-","*","/"]);private function calculate():void{this.submit.enabled=false;var url:String="http://localhost:8080/myReport/FlexCalculate";this.sevlet.url=url;var param:URLVariables=new URLVariables();if(this.number1.text == "" || this.number2.text == ""){  Alert.show("请输入数字");  return;}param.number1=this.number1.text;param.number2=this.number2.text;param.opertion=this.myComboBox.text;param.timestamp=(new Date()).toString();this.sevlet.send(param);//}private function resultHandler(event:ResultEvent):void{result.text = event.result.userthis.submit.enabled=true;}private function clean():void{    this.number1.text = "";this.number2.text = "";this.myComboBox.text = "+";this.result.text = "";}]]></fx:Script><s:Panel width="500" height="300" title="计算器" backgroundColor="#8C7C73" verticalCenter="0" horizontalCenter="0">              <mx:VBox>        <mx:HBox><s:TextInput width="150" id="number1"/>  <mx:ComboBox id="myComboBox" x="10" y="10" dataProvider="{com}" width="50"/><s:TextInput width="150" id="number2"/><s:Button label="=" width="30" id="submit" click="calculate();"/><s:TextInput width="50" id="result"/></mx:HBox>        <mx:HBox>    <s:Button label="计算" width="230" click="calculate();"/><s:Button label="清除" width="230" click="clean();"/></mx:HBox>  </mx:VBox></s:Panel></s:Application>


servlet文件:
package controller;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class FlexCalculate extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println("1111");System.out.println("number1:" + request.getParameter("number1"));System.out.println("number2:" + request.getParameter("number2"));System.out.println("opertion:" + request.getParameter("opertion"));int result = 0;if(request.getParameter("opertion").equals("+")){result = Integer.valueOf(request.getParameter("number1")) + Integer.valueOf(request.getParameter("number2"));}else if(request.getParameter("opertion").equals("-")){result = Integer.valueOf(request.getParameter("number1")) - Integer.valueOf(request.getParameter("number2"));}else if(request.getParameter("opertion").equals("*")){result = Integer.valueOf(request.getParameter("number1")) * Integer.valueOf(request.getParameter("number2"));}else{result = Integer.valueOf(request.getParameter("number1")) / Integer.valueOf(request.getParameter("number2"));}    System.out.println("result1:" + result);        request.setCharacterEncoding("UTF-8"); //flex中隐含为utf-8编码        response.setContentType("text/xml;charset=utf-8");        String para = request.getParameter("username");        PrintWriter out = response.getWriter();        out.println("<zpa>");        out.println("<user>"+result+"</user>");        out.println("</zpa>");        out.flush();        out.close();}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {           doGet(request,response);}}


热点排行