zoukankan      html  css  js  c++  java
  • 完整的jdbc查询结果集编码

     1 public static ArrayList<HashMap<String,Object>> query(Connection conn,String sql, Object[] paras) throws Exception {
     2         PreparedStatement statement = null;
     3         ResultSet ss = null;
     4         String str = "";//打日志使用
     5         ArrayList<HashMap<String,Object>> resultList = new ArrayList<HashMap<String,Object>>();
     6         statement = conn.prepareStatement(sql);
     7         if(paras!=null&&paras.length!=0){
     8             for (int i = 0; i < paras.length; i++) {
     9                 if (paras[i].getClass().getSimpleName().equals("Integer")) {
    10                     statement.setInt(i + 1, (Integer)paras[i]);
    11                     str+=paras[i];
    12                 } else {
    13                     statement.setString(i + 1, (String) paras[i]);
    14                     str+=paras[i];
    15                 }
    16             }
    17         }
    18         ss = statement.executeQuery();
    19         ResultSetMetaData rsmd = ss.getMetaData();//获得结果集的列信息
    20         int columnNum = rsmd.getColumnCount();
    21         while(ss.next()){
    22             HashMap<String,Object> tmpMap = new HashMap<String, Object>();
    23             for (int i = 1; i <=columnNum; i++) {//循环列组装list
    24                 tmpMap.put(rsmd.getCatalogName(i), ss.getObject(i));
    25             }
    26             resultList.add(tmpMap);
    27         }
    28 //        logger.info("sql:"+sql+" paras:"+str+" resultList:"+resultList.size());
    29         return resultList;
    30     }

    以上代码功能不够完成,酌情参考;

    参数解析:

    Connection conn,数据库链接java.sql.Connection;

    String sql, 需要执行的查找SQL java.lang.String;

    Object[] paras,根据查找需要传入的参数,Object类型,可以支持Integer和String类型的参数

    ArrayList<HashMap<String,Object>> 返回查询结果集,list

    语句解释:

    ResultSetMetaData rsmd = ss.getMetaData();可以得到SQL查询的结果的列信息

    int columnNum = rsmd.getColumnCount();得到结果集中列的数量

    rsmd.getCatalogName(i) 根据一条数据中顺序获得当前列的名称

    ss.getObject(i) 从结果集中获得当前列对应的数据

  • 相关阅读:
    JUnit4的使用
    Android中使用JUnit4测试发生fatal error
    计算器的M+是什么意思
    初识Ildasm.exe——IL反编译的实用工具
    jsp下载
    jsp文件上传
    java.sql.SQLException: Io 异常:
    在PowerDesigner中创建物理模型时DBMS选项为空
    oracle10g还原被drop的表
    oracle创建用户
  • 原文地址:https://www.cnblogs.com/sagech/p/4485684.html
Copyright © 2011-2022 走看看