如果把一个ResultSet转成list?菜鸟问题:)))

xiexiaor 2004-04-29 04:26:03
同题目
...全文
120 9 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
sun0591 2004-08-19
up
  • 打赏
  • 举报
回复
xiangbo520 2004-05-03
你的list是指什么啊!是哈希表,还是html的表格啊!!!!
  • 打赏
  • 举报
回复
xiexiaor 2004-05-03
java.awt.*

就是collection类型的list
  • 打赏
  • 举报
回复
xiexiaor 2004-05-02
顶!
  • 打赏
  • 举报
回复
xiexiaor 2004-05-01
还有简单点的方法吗?谢谢楼上的发了那么多:)
  • 打赏
  • 举报
回复
jackern 2004-04-29
/**
?java.sql.ResultSet ??? ???cm.ResultObj ???
@param java.sql.ResultSet res
@return cm.ResultObj result
@exception java.sql.SQLException
*/
public ResultObj convertRes(ResultSet rs) throws SQLException {
ResultObj result = new ResultObj();

try {
ResultSetMetaData rsmd = rs.getMetaData();
int rows = 0;
int cols = rsmd.getColumnCount();
String[] s = new String[cols];

for (int i = 1; i <= cols; i++) {
s[i - 1] = rsmd.getColumnLabel(i);
}

result.addElement(s);

for (rows++; rs.next(); rows++) {
s = new String[cols];

for (int i = 1; i <= cols; i++) {
s[i - 1] = helper(rs, rsmd.getColumnType(i), i);
}

result.addElement(s);
}

result.setCols(cols);
result.setRows(rows);
} catch (Exception e) {
throw new SQLException(e.getMessage());
}

return result;
}

protected String helper(ResultSet rs, int dataType, int col)
throws SQLException {
String retValue = null;

switch (dataType) {
default:
break;

case 91: // '['

Date date = rs.getDate(col);

if (date != null) {
retValue = date.toString();
}

break;

case 92: // '\\'

Time time = rs.getTime(col);

if (time != null) {
retValue = time.toString();
}

break;

case 93: // ']'

Timestamp timestamp = rs.getTimestamp(col);

if (timestamp != null) {
retValue = timestamp.toString();
}

break;

case -1:
case 1: // '\001'
case 12: // '\f'
retValue = rs.getString(col);

break;

case 2: // '\002'
case 3: // '\003'

BigDecimal numeric = rs.getBigDecimal(col);

if (numeric != null) {
retValue = numeric.toString();
}

break;

case -7:

boolean bit = rs.getBoolean(col);
Boolean boolObj = new Boolean(bit);
retValue = boolObj.toString();

break;

case -6:

byte tinyint = rs.getByte(col);
Integer intObj = new Integer(tinyint);
retValue = intObj.toString();

break;

case 5: // '\005'

short smallint = rs.getShort(col);
intObj = new Integer(smallint);
retValue = intObj.toString();

break;

case 4: // '\004'

int integer = rs.getInt(col);
intObj = new Integer(integer);
retValue = intObj.toString();

break;

case -5:

long bigint = rs.getLong(col);
Long longObj = new Long(bigint);
retValue = longObj.toString();

break;

case 7: // '\007'

float real = rs.getFloat(col);
Float floatObj = new Float(real);
retValue = floatObj.toString();

break;

case 6: // '\006'
case 8: // '\b'

double longreal = rs.getDouble(col);
Double doubleObj = new Double(longreal);
retValue = doubleObj.toString();

break;

case -4:
case -3:
case -2:

byte[] binary = rs.getBytes(col);

if (binary != null) {
retValue = new String(binary);
}

break;
}

return retValue;
}



ResultObj 是个Vector,你看看例子吧,主要是用ResultSetMetaData将数据得出类型和字段名来,再用helper方法转换为String,看对你有没有帮助。
  • 打赏
  • 举报
回复
lcllcl987 2004-04-29
<%
while(rs.next()){
%>
产生一个html格子
<%}%>
  • 打赏
  • 举报
回复
xiexiaor 2004-04-29
高手进来帮帮忙啊?就快要交啦,呜~~~~```!!!!!!!!!!!
  • 打赏
  • 举报
回复
xiexiaor 2004-04-29
写错了,是如何转化?
  • 打赏
  • 举报
回复
相关推荐
发帖
Web 开发
加入

8.0w+

社区成员

Java Web 开发
社区管理员
  • Web 开发社区
申请成为版主
帖子事件
创建了帖子
2004-04-29 04:26
社区公告
暂无公告