bbosspersistent1.0.2中如何更方便地实现大字段(clob,blob)的处理
来源:优易学  2011-12-26 11:37:43   【优易学:中国教育考试门户网】   资料下载   IT书店

  一门好的语言需要良好的支持IO操作, Java有了Socket才有了JDBC, Servlet, Tomcat and etc.
  先看下FLEX的XMLSocket.
  XMLSocket提供的接口比较简单, 文档还有简单的例子, 跟Java区别写法比较大的就是它异步的回调.
  FLASH客户端代码:
  一门好的语言需要良好的支持IO操作, Java有了Socket才有了JDBC, Servlet, Tomcat and etc.
  先看下FLEX的XMLSocket.
  XMLSocket提供的接口比较简单, 文档还有简单的例子, 跟Java区别写法比较大的就是它异步的回调.
  <?xml version="1.0" encoding="utf-8"?>
  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="800" height="600" creationComplete="initApp()">
  <mx:Script><![CDATA[
  import mx.controls.Alert;
  private var sock:XMLSocket = null;
  //Initial the GUI
  private function initApp():void {
  }
  //Click logon
  private function connectServer(event:MouseEvent):void {
  if (this.sock != null)
  return;
  this.sock = new XMLSocket();
  //Refer to XMLSocket document, follow the sample here
  this.configureListeners(this.sock);
  this.sock.connect("localhost", 8080);
  this.sendButton.enabled = true;
  }
  public function send(data:Object):void {
  this.sock.send(data);
  }
  private function configureListeners(dispatcher:IEventDispatcher):void {
  dispatcher.addEventListener(Event.CLOSE, closeHandler);
  dispatcher.addEventListener(Event.CONNECT, connectHandler);
  dispatcher.addEventListener(DataEvent.DATA, dataHandler);
  dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
  dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
  dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
  }
  private function closeHandler(event:Event):void {
  trace("closeHandler: " + event);
  this.appendLine("CLose event socket");
  }
  private function connectHandler(event:Event):void {
  trace("connectHandler: " + event);
  this.appendLine("Send: connect to server sucessfully." + event.target.toLocaleString());
  }
  private function appendLine(mesg:String):void {
  //The \0 will be added automatically like C
  this.messageArea.text += (mesg);
  }
  private function dataHandler(event:DataEvent):void {
  trace("dataHandler: " + event);
  this.appendLine("Server Response:" + event.data);
  //this.messageArea.text += ("Server Response:" + event.target.toLocaleString() + "\r\n");
  }
  private function ioErrorHandler(event:IOErrorEvent):void {
  trace("ioErrorHandler: " + event);
  this.appendLine("Oops, ioError");
  }
  private function progressHandler(event:ProgressEvent):void {
  trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
  }
  private function securityErrorHandler(event:SecurityErrorEvent):void {
  trace("securityErrorHandler: " + event);
  this.appendLine("Oops, encounter security error:" + event.text);
  }
  private function sendMessage(event:MouseEvent):void {
  var message:String = this.messageField.text;
  //message = "<message>" + message + "</message>\r\n";
  message = message + "\r\n";
  if (message != null && message.length > 0) {
  this.send(message);
  //this.messageArea.text += ("Send:" + message + "\r\n");
  this.appendLine("Send:" + message );
  }
  }
  ]]>
  </mx:Script>
  <mx:TextArea x="10" y="10" width="780" height="386" id="messageArea"/>
  <mx:TextInput x="10" y="416" width="536" height="31" id="messageField"/>
  <mx:Button x="577" y="416" label="Send" height="31" width="69" id="sendButton" enabled="false" click="sendMessage(event)"/>
  <mx:Button x="669" y="416" label="Logon" height="31" id="logonButton" click="connectServer(event)"/>
  </mx:Application>
  JAVA服务器:
  /*
  * testflex.CellPhoneLocator.java 2008-12-23
  */
  package testflex;
  import java.io.BufferedReader;
  import java.io.IOException;
  import java.io.InputStream;
  import java.io.InputStreamReader;
  import java.io.PrintWriter;
  import java.io.UnsupportedEncodingException;
  import java.net.InetAddress;
  import java.net.ServerSocket;
  import java.net.Socket;
  import java.util.Date;
  import java.util.HashMap;
  import java.util.Map;
  import java.util.StringTokenizer;

[1] [2] [3] 下一页

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训