`
ksdq75ksdq
  • 浏览: 12138 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

Flex4与java通信(二、与servlet通信)

阅读更多

  说明:这里介绍使用URLRequest+URLLoader与java服务端servlet通信.
  URLRequest 类
  URLRequest 类可捕获单个 HTTP 请求中的所有信息。
  URLVariables 类
  使用 URLVariables 类可以在应用程序和服务器之间传输变量。
  URLRequestMethod 类
  该类只有两个静 态常量值, 一个是POST, 一个是GET, 可以把它当作是一个枚举类型, 用于指定URL请求时使用POST方式或是GET方式.
  URLLoader 类
  真正与服务端打 交道的类, 通过load方法把一个Reuqest发送给服务端, 在load之前必须给该对象添加一个Complete事件的监听器,接收服务器返回的信息. 传输过程中有可能产生IO错误, 有必要时可以为该对象添加IOError监听器.
  例子:
  var request: URLRequest = new URLRequest(
  );
  //指定 rquest地址
  request.url=" 指定rquest地址";
  //默认为 URLRequestMethod.GET, 若使用GET方式可以不指定
  request.method = URLRequestMethod.POST;
  //创建一个参 数变量对象,用于保存所有向服务发送的参数数据, GET方式可以不使用
  var vars: URLVariables = new URLVariables ();
  vars["varName"] = varValue; //把参数键,值对放到vars对象中.
  vars["var2Name"] = var2Value;
  request.data = vars;  //把参数对象放进Request对象中作为参数
  // 通过request对象创建一个loader, 
  var loader: URLLoader = new URLLoader(request);
  事件及返回值的处理 
  loader.addEventListener( // 给loader对象 添加完成时的监听器.
  Event.COMPLETE, 
  function(e: Event):void  //临时定义一个监听器
  {
  // 服务端返回的数据是保存在loader的data里,通过以下语句可以得到
  trace(URLLoader(e.target).data );//在监听器里处理服务端返回的数据
  //complete
  // process the data;
  }
  );
  loader.addEventListener( //IOError 监听器
  IOErrorEvent.IO_ERROR, 
  //临时监听器,IO错误的处理在该函数中处理
  function(e: IOErrorEvent): void {/* process the err;*/}
  );
  loader.load(request);// 把request对象发送到服务端.当请求完成,则会自动触发COMPLETE事件
  下面给出一个实例:
  xml代码:  flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">      height="247" title="Form">      height="13"/> height="13"/>    Java代码: public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); // 获取URLResuest请求回的参数 返回数据用;分隔以方便Flex对数据进行序列化 String rs = new String("name=" + request.getParameter("name") + ";age=" + request.getParameter("age") + ";address=" + request.getParameter("address")); response.setContentType("text/plain"); System.out.println(rs); response.getWriter().write(rs); } OK,运行应用程序,you can see:
  
  后台:
  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics