将任意查询结果ResultSet转化成List<Map>(二)
s.getTimestamp(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.sql.Date") || fieldClassName.equals("java.util.Date")) {
java.util.Date s = rs.getDate(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.sql.Time")) {
java.sql.Time s = rs.getTime(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.lang.Byte")) {
byte s = rs.getByte(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, new Byte(s));
}
} else if (fieldClassName.equals("[B") || fieldClassName.equals("byte[]")) {
//byte[]出现在SQL Server中
byte[] s = rs.getBytes(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.math.BigDecimal")) {
BigDecimal s = rs.getBigDecimal(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.lang.Object")
|| fieldClassName.equals("oracle.sql.STRUCT")) {
Object s = rs.getObject(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.sql.Array")
|| fieldClassName.equals("oracle.sql.ARRAY")) {
java.sql.Array s = rs.getArray(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.sql.Clob")) {
java.sql.Clob s = rs.getClob(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else if (fieldClassName.equals("java.sql.Blob")) {
java.sql.Blob s = rs.getBlob(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
} else {//对于其它任何未知类型的处理
Object s = rs.getObject(fieldName);
if (rs.wasNull()) {
fieldValue.put(fieldName, null);
} else {
fieldValue.put(fieldName, s);
}
}
}
public List query(String sqlquery, int position, int length, boolean isScrollSenstive) throws SQLException 的源代码,
[java]
/**
* 通过一个可滚动结果集获取指定起始位置、指定长度的子结果集,不论isScrollSenstive真否,结果集均设定为只读.
*
* @param sqlquery 是标准查询语句,可以是任意复杂的多表查询语句,但必须是受JDBC API支持的标准查询语句
* @param position 记录起始位置,注意表中记录是从1开始;越界则返回0条记录
* @param length 是指定记录长度,