Flex-前段actionScript类与Java类的对应(RemoteObject通信-amf)

对于一个实体类,没有包含其他自定义类,在Flex前段对应,只需如下:

 

package actionScript.entity
{
	[Bindable]
	[RemoteClass(alias="org.cloud.entity.User")]
	public class User
	{
		public function User()
		{
		}
		public var id:int;
		public var username:String;
		public var password:String;
		public var name:String;
		public var userType:String;
}


org.cloud.entity.User是java端User类的路径。这样定义后,使用RemoteObject获取User类后可以直接转换为actionScript写的User。

 

但是如果User中含有其他自定义类,如Department,用户所属部门。java端使用Hibernate,反射出的实体类就会含有外键所在类。定义如下,可防止Department为空:

 

package actionScript.entity
{
	[Bindable]
	[RemoteClass(alias="org.cloud.entity.User")]
	public class User
	{
		public function User()
		{
		}
		public var id:int;
		public var username:String;
		public var password:String;
		public var name:String;
		public var userType:String;
                public var department:Object;
}

在flex端访问user的department属性,方式为:user.department.departmentName类似的即可。

 

但这样,当往后端存或更新用户时就会出现错误,在java端department属性无法被解析为Department类型。所以为了从根本上避免此麻烦,建议:在java端重新定义一个类来保存需要的实体信息,如UserRecord,它有User的基本信息和departId、departName等部门的信息。前后端通信使用UserRecord,java端的业务逻辑类接受UserRecord,然后转换成User来进行存取。

 

转载于:https://www.cnblogs.com/whuqin/archive/2011/08/05/4982066.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值