| return null; } while (rs.next()) { Row row = new Row(); for (int i = 1; i <= cols; i++) { String name = rsmd.getColumnName(i); Object value = rs.getObject(i); //作通用类型处理,这样row中的类型都是Object型的。 /** * 这里要做空值处理,因为在进行RowToValueObject转换时如果是空值则不能得到值的类型 * 所以如果是空值那么把value设置成类型信息 */ if (value == null) { value = Class.forName(rsmd.getColumnClassName(i)); } // System.out.println(value.getClass());//用于得到数据库中的类型对应Java中的什么类型 row.put(name, value); } rows.add(row); } rs.close(); pstmt.close(); } catch (Exception ex) { throw new DBAccessException(InforGeter.getErrorInfor(this, "executeQuery", ex, "执行SQL(" + sql + ")查询时出错!")); } finally { database.disConnect(conn); //调用数据库对象的释放连接方法(此方法内对取得连接方式的不同情况做了处理) } return rows; } /** * 增加一行 * @param row */ public int putRow(Row row) throws DBAccessException { return putRow(row, null, null); } /** * 修改一行(没有条件就是增加) * @param row * @param conditions */ public int putRow(Row row, String conditions, Object[] args) throws DBAccessException { String ss = ""; |