我上面传了个数据数据里面有10来个数据
String choise [] = request.getParameterValues("choise");                             while(rs.next()){
     String stc="";
     obj = new QueryObject();
     obj.setLh(rs.getString("lh"));
     obj.setPm(rs.getString("pm"));
     obj.setGg(rs.getString("gg"));
     obj.setGysh(rs.getString("gysh"));
     obj.setSl(rs.getString("shl"));
     obj.setDanj(rs.getString("danj"));
     obj.setZongj(rs.getString("zongj"));
     obj.setUnit(rs.getString("unit"));
     obj.setCplb(rs.getString("lbl"));
     obj.setDate(rs.getString("indate"));
                              
                             //要在下面判断我上面的数组数据是否与下面的stc为一样为一样的就存到map里面
                             //MAP的key为数组参数 value为下面的list 这样怎么判断好?
                             //sql 进行了ORDER by lb asc
 
     stc=rs.getString("lb");
     System.out.println(stc);
     obj.setCplb(stc);
     list.add(obj);
    }

解决方案 »

  1.   


    /*
    我的 lb 里面的数据是这样的
      lb
      pda
      pda 
      pda 
      pbc
      pdc
      pdc
     有10多种lb我想通过判断存到Map里 Map的key为 类别名如pda, value为lb是pda的所用值 以list存
     如map.put("pda",list);这样在while(rs.next())怎么判断才好!
    */
      

  2.   

    Map <类别,内容list> 
      

  3.   

    现在就是要判断类别
     假如为pda
     那么 map.put("pda"pda内容list);
      

  4.   

    我自己揣摸了下,搂主是说有很多称为lb的东西,然后有很多属性,通过list封装,然后要保存他们,通过map保存,是不?然后在需要保存的时候去分类但是,分类的标准是什么?通过属性中的第一个字符串?
    说实话,我实在是看不出有什么问题?
      

  5.   


    数据库取出的类别只有一种吗?
    只有一个list,你放到哪个类别里?如果结果集里只有一种类别,用个变量保存,while循环完之后再与数组判断
    如果是多种类别,这种做法就是错误的,多个类别保存的都是同一个list
      

  6.   

    一个list,里面放10个对象,每个对象存储数据库的 纪录。
      

  7.   


    HashMap<String, List<QueryObject>> results = new HashMap<String, List<Object>>(); // KEY:lb
    // VALUE:QueryObject
    while (rs.next()) {
    String stc = "";
    obj = new QueryObject();
    obj.setLh(rs.getString("lh"));
    obj.setPm(rs.getString("pm"));
    obj.setGg(rs.getString("gg"));
    obj.setGysh(rs.getString("gysh"));
    obj.setSl(rs.getString("shl"));
    obj.setDanj(rs.getString("danj"));
    obj.setZongj(rs.getString("zongj"));
    obj.setUnit(rs.getString("unit"));
    obj.setCplb(rs.getString("lbl"));
    obj.setDate(rs.getString("indate"));
    obj.setCplb(rs.getString("lb"));
    List<Object> list = null;
    if (results.containsKey(obj.getCplb())) {
    list = results.get(obj.getCplb());
    } else {
    list = new ArrayList<Object>();
    results.put(obj.getCplb(), list);
    }
    list.add(obj);
    }坦白说我没明白你具体问什么
      

  8.   

    楼主是想一个字段对应多个值,然后存储吗?
    List aList =new ArrayList();
    while (resultSet.next()) {
     sb.append(resultSet.getInt(1));
    }
    alist.add(sb.toString());
    然后放到map中就可以了