public static List executeQuery(String sql) { Statement stmt = null; Connection con = null; ResultSet rst = null; List resultList = new LinkedList(); try { con = DBConnection.createConnection(); stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); rst = stmt.executeQuery(sql); int n = rst.getMetaData().getColumnCount();//取得总列数 while ( rst.next() ) { Map map = new HashMap(); for (int i = 1; i <= n; i++) { map.put(rst.getMetaData().getCatalogName(i), rst.getObject(i)); } resultList.add(map); } } catch (SQLException e) { e.printStackTrace(); return null; } finally { DBConnection.releaseResultSet(rst);// 释放资源 DBConnection.releaseStatement(stmt); DBConnection.releaseConnection(con); } return resultList; }
|