在java beanutils.populate </object>上解析List <object>

时间:2015-02-23 20:05:49

标签: java list servlets hashmap

我是java beanutils的新手,我很难弄清楚如何才能实现这一目标。 我可以从Html FORM获取所有字段,填充beanutils.populate(Object, request.getParamterMap());

所有作品,甚至字段映射为&#34; CustomClass someobj&#34;,我有一点麻烦,但表格输入字段提名为&#34; someobj.field&#34;我能说得对。 现在我需要做一个列表listobj,但我不知道如何。 尝试使用表单名称"listobj[].field", "listobj.[].field", "listobj.[]field", "listobj[][field]",但这些都不起作用。我可以通过setProperty("listobj",List<CustomClass>);

手动完成

1 个答案:

答案 0 :(得分:0)

我明白了。 对于有同样问题的人,我做的是:

以Html格式

name="indexedListobj[listobj.id].field"

我正在使用hibernate,所以我的对象现在是Set<CustomClass> listobj而不是List<CustomClass> listobj,以防止收集异常。 我所做的是创建另一个方法来检查Set中的对象的索引,然后更新对象(如果存在),或者如果不存在则附加新的。像这样:

public CustomClass getindexedListobj(int index) {
     CustomClass tmp = null;
     for(CustomClass o : this.listobj)
        if(o.getId() == index) {
          tmp = o;
          break;
        }
     if(tmp == null) {
       tmp = new CustomClass();
       this.listobj.add(tmp);
     }
   return tmp;
}