开发flash remoting的时候,直接把一个flash的vo对象发送到服务器,然后服务器接受这个vo,并取出对应的值,具体的情况可能各不相同,直接假设一个客户端传过来的vo要把里面有值的地方传给新的vo对象中
(实际例子,客户端传一个与Hibernate的VO具有相同属性的vo,在这里要把客户端vo的值传给hibernate的vo,从而更新数据库,为了避免给不同的vo手工编写代码,所以就用到了反射)
在这里,主要是利用到反射,这是一个简单的例子,有兴趣的人可以继续扩充
下面是比较类的代码
最后是测试代码
- import org.sujun.utils.ObjectCompare;
- public class TestMain
- {
- public static void main(String[] args) throws Exception
- {
- ClientVo clientVo = new ClientVo();
- clientVo.setName("soda");
- clientVo.setAge(24);
- clientVo.setFlag(true);
-
- ClientVo serverVo = new ClientVo();
- serverVo.setForm("by soda.C");
- ObjectCompare.voCompare(clientVo, serverVo);
- System.out.println(serverVo);
- }
- }
编译输出结果是:
[ClientVo name:soda age:24 form:by soda.C]
//clientVo.setForm("guang dong");恢复这个注释的代码,输出的结果是:
[ClientVo name:soda age:24 form:guang dong]
可以当有属性没有值的时候,他是不会重新赋值的
事实上,对bean的各种操还可以使用 apache 的 BeanUtils ,功能很强大
上一篇:
使用FluorineFX Cosole测试Flash Remoting 下一篇:
Flash remoting-使用ByteArray