dbExecuteList

public List<Map<String, String>> dbExecuteList(String sql){
  List<Map<String, String>> list = new ArrayList<Map<String, String>>(); // 声明一个List接口的引用类型list
  Connection conn = null;
  Statement stmt = null;
  ResultSet rs = null;
  try {
   conn = dbConn(); // 调用本类dbConn()方法得到对象Connection // 引用ArrayList类
   Map<String, String> map = null; // 声明一个Map引用类型
   stmt = conn.createStatement();
   rs = stmt.executeQuery(sql); // 执行SQL语句返回ResultSet结果集对象
   ResultSetMetaData remeda = rs.getMetaData(); // resuSet结果集得到ResultSetMetaData接口对象
   int now = remeda.getColumnCount(); // 得到表列数
   Map<String, String> mapname = new HashMap<String, String>();
   // 从表的第1列开始,把所有列以HashMap<第*列,*列名>方式保存
   for (int i = 1; i <= now; i++) {
    String rowName = Integer.toString(i);
    mapname.put(rowName, remeda.getColumnName(i));
   }
   list.add(mapname);// 把列名HashMap对象添加到list合集内
   //把表里所有列的
   while (rs.next()) {
    map = new HashMap<String, String>();
    for (int i = 1; i <= now; i++) {
     map.put(remeda.getColumnName(i), rs.getString(i));
    }
    list.add(map);
   }
   rs.close();
   stmt.close();
   conn.close();
   System.out.println("SQL语句:  "+sql+" 执行完毕!!");
  } catch (SQLException e) {
   System.out.println("SQL语句:  "+sql+" 执行失败!!!");
   e.printStackTrace();
  } catch (Exception ex) {
   System.out.println("SQL语句:  "+sql+" 执行失败!!!");
   ex.printStackTrace();
  } finally {
   try {
    if (!conn.isClosed()) {
     conn.close();
     conn = null;
    }
   } catch (Exception e) {
    System.out.println("!conn.isClosed()失败!");
    e.printStackTrace();
   }
  }
  return list;
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值