`
topbox163
  • 浏览: 51953 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Flex 传JAVA BEAN 到后台 JAVA

阅读更多
Main.mxml 部分代码

private function insert() : void {

var d : ArrayCollection = new ArrayCollection([
{name : "Lucy",nickName : "Jack.Daoson", role : "管理员", pwd : "123456", created_time : "2012-05-15 13:39"}
]);
rmDelData.insertUser(d); //rmDelData 为 RemoteObject ID
}

<fx:Declarations>

<s:RemoteObject id="rmDelData" destination="userDao"
result="rmDelData_resultHandler(event)"/>
</fx:Declarations>
User.java
package com.vicky.pojo;

public class User {
private Integer id;
private String name;
private String nickName;
private String role;
private String pwd;
private String created_time;


public User() {
super();
}
//此处省略了各属性的 get set 方法,需要补上
}




UserDao.java 部分代码
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import com.vickey.pojo.User;
import com.vickey.util.MD5;

import flex.messaging.io.ArrayCollection;
import flex.messaging.io.amf.ASObject;
import flex.messaging.io.amf.translator.ASTranslator;

//添加
public boolean insertUser(ArrayCollection arrayCollection) throws SQLException{
if (arrayCollection == null || arrayCollection.size() == 0) {
return false;
}
String classPath = User.class.getName(); //得到USER对象的路径:com.vickey.pojo.User
Object obj = this.convertFlexToJavaBean(arrayCollection, classPath);
if (obj == null) {
return false;
}
User u = (User) obj;
String sql = "INSERT INTO USERS VALUES " +
"(" +
"null," +
"'"+u.getName()+"'," +
"'"+u.getNickName()+"'," +
"'"+MD5.md5Encode(u.getPwd())+"'," +
"'"+u.getRole()+"'," +
"'"+u.getCreated_time()+"'" +
")";

return MyDB.changeData(sql);
}

//获得单个对象
public Object convertFlexToJavaBean(ArrayCollection arrayCollection, String classPath){
List list = this.convertFlexToJavaList(arrayCollection, classPath);
if (list == null || list.size() == 0) {
return null;
}
return list.get(0);
}
//获得一个集合
public List convertFlexToJavaList(ArrayCollection arrayCollection, String classPath){
List dataList = null;
try {
if (arrayCollection == null || classPath == null || classPath.length() == 0) {
return null;
}
dataList = new ArrayList();
ASObject asObject = null;
ASTranslator asTranslator = null;
Class cls = Class.forName(classPath); //反射,可以转换成任意一个JAVA BEAN

for(int i=0; i<arrayCollection.size(); i++){
asObject = (ASObject) arrayCollection.get(i);
asObject.setType(classPath);
asTranslator = new ASTranslator();

dataList.add(asTranslator.convert(asObject, cls.getClass()));
}
} catch (Exception e) {
e.printStackTrace();
}
return dataList;
}

有疑问,联系:123296959
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics