Mysql 如何在AS3中使用mx.rpc.Responder
我正在尝试使用名为assql的库来处理mysql的操作。在使用中,我看到她使用了一个名为AsyncResponder的方法,即仅适用于Flex应用程序的mx.rpc包。。。我的问题是,如何在传统的AS3中使用此方法,或使用另一个函数来解决我的问题Mysql 如何在AS3中使用mx.rpc.Responder,mysql,sql,actionscript-3,flash,rpc,Mysql,Sql,Actionscript 3,Flash,Rpc,我正在尝试使用名为assql的库来处理mysql的操作。在使用中,我看到她使用了一个名为AsyncResponder的方法,即仅适用于Flex应用程序的mx.rpc包。。。我的问题是,如何在传统的AS3中使用此方法,或使用另一个函数来解决我的问题 package { import com.maclema.mysql.Statement; import com.maclema.mysql.Connection; import com.maclema.mysql.Resu
package {
import com.maclema.mysql.Statement;
import com.maclema.mysql.Connection;
import com.maclema.mysql.ResultSet;
import mx.rpc.AsyncResponder;
import com.maclema.mysql.MySqlToken;
import com.maclema.util.ResultsUtil;
import flash.display.MovieClip;
import flash.events.Event;
public class CRUD extends MovieClip{
//The MySql Connection
private var con:Connection;
public function CRUD() {
onCreationComplete();
}
private function onCreationComplete():void {
con = new Connection("localhost", 3306, "root", "", "banricoop-game");
con.addEventListener(Event.CONNECT, handleConnected);
con.connect();
}
private function handleConnected(event:Event):void {
getAllUsers();
}
private function getAllUsers():void {
var st:Statement = con.createStatement();
var token:MySqlToken = st.executeQuery("SELECT * FROM users");
token.info = "GetAllUsers";
token.addResponder(new AsyncResponder(result, fault, token));
}
private function getEmployee(userID:int):void {
var st:Statement = con.createStatement();
st.sql = "SELECT * FROM users WHERE id = ?";
st.setNumber(1, userID);
var token:MySqlToken = st.executeQuery();
token.info = "GetUser";
token.userID = userID;
token.addResponder(new AsyncResponder(result, fault, token));
}
private function result(data:Object, token:Object):void {
var rs:ResultSet;
if ( token.info == "GetAllUsers" ) {
rs = ResultSet(data);
trace("Found " + rs.size() + " employees!");
} else if ( token.info == "GetUser" ) {
rs = ResultSet(data);
if ( rs.next() ) {
trace("Employee " + token.employeeID + " username is '" + rs.getString("username") + "'");
}
else {
trace("No such employee for id " + token.employeeID);
}
}
}
private function fault(info:Object, token:Object):void {
trace(token.info + " Error: " + info);
}
}
}
拥抱 您需要下载并将这些库添加到项目中:
/frameworks/libs/framework.swc
/frameworks/libs/rpc.swc
因此,您将能够在仅限AS3的环境中使用