免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2593 | 回复: 5
打印 上一主题 下一主题

请教解决方案 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-08-03 16:06 |只看该作者 |倒序浏览
本帖最后由 末代地主 于 2010-08-03 16:09 编辑

需求是这样的.

有一个对象
class A{
   private Integer id;
   private String name;
   
   //....get set
}

在对象B
class B{
    private List<A> list;
   
    //....get set
}

然后测试类Test
class Test{
      public static void main(String[] a){
            Map map=new HashMap();
            map.put("list.id",new Long[]{1,2,3});//动态变化的
        map.put("list.name",new String[]{"test1","test2","test3"});//动态变化的

     }
}

现在需要动态的将A对象列表注入到B对象的list属性中

希望得到list中是
第一个对象id=1,name=test
第二个id=2,name=test2那样的效果

类似页面的动态生成表单项后提交一样

我用beanutils没有能实现,请教一下各位,谢谢了!

论坛徽章:
0
2 [报告]
发表于 2010-08-04 08:42 |只看该作者
不懂 ?? 你是想自动注入??
还是想怎么样?

论坛徽章:
0
3 [报告]
发表于 2010-08-04 08:49 |只看该作者
是的,就是想将参数动态注入
测试类完整应该是这样

然后测试类Test
class Test{
      public static void main(String[] a){
            Map map=new HashMap();
            map.put("list.id",new Long[]{1,2,3});//动态变化的
        map.put("list.name",new String[]{"test1","test2","test3"});//动态变化的
        
        B b=new B();
            BeanUtils.populate(b,map);//这种方式注入普通属性没问题,但这种动态list里面的对象不行

     }
}

论坛徽章:
0
4 [报告]
发表于 2010-08-04 09:11 |只看该作者
回复 3# 末代地主


    如果是自己new  干脆自己set
如果不是我帮不上了。beanutil 几年前在web环境用过。没传过list

论坛徽章:
0
5 [报告]
发表于 2010-08-04 11:03 |只看该作者
应用中对象A,B,以及B中对应A对象列表属性绑定都是动态的

论坛徽章:
0
6 [报告]
发表于 2010-08-06 08:36 |只看该作者
list中放A对象实例就可以了呀?没明白你想要什么
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP