sql 查询封装成map

通过N多个条件,最终拼接成一条sql语句,执行完成后把结果封装成一个map,供后面方法调用 

    rs=ps.executeQuery();
           ResultSetMetaData rsmd=rs.getMetaData();
           int num=rsmd.getColumnCount();
           while (rs.next()) {
Map rowMap=new HashMap(num);
for (int i = 1; i <= num; i++) {
rowMap.put(rsmd.getColumnName(i), rs.getObject(i));
}
dataList.add(rowMap);
   }

java.sql.ResultSet.getMetaData() 得到结果集的结构信息,比如字段数、字段名等。

java.sql.ResultSet.getMetaData().getTableName(1)) 就可以返回表名

java.sql.ResultSet.getMetaData().getColumnCount() 得到数据集的列数

这样就可以通过不同的sql查询出不同的对象封装到map中,然后可以通过字段名来取出相应的字段数据,并存放到定义好的pojo类中

Iterator it = dataList.iterator();
while(it.hasNext()){
Map m = (Map)it.next();
UploadFile uf = new UploadFile();        //每次定义一个pojo类,把取出的相关字段信息保存到pojo中
uf.setExistsFlag(m.get("EXISTS_FLAG").toString());  //通过set方法把值设置进去
uf.setFillType(m.get("FILL_TYPE").toString());

               }

学习随笔,暂记









你可能感兴趣的:(sql,HashMap,iterator)