主要是实现功能:在jsp页面输入SQL语句,下面显示结果。基本思路:SQL语句存入hashmap,然后hashmap存入list,从list怎么取hashmap?从hashmap怎么取结果?用jsp取,相关代码:
public static List executeQueryStringList(String sql) {
if (sql == null || sql.trim().equals("")) {
log.info("参数sql不能为空,必须是select语句。");
throw new NullPointerException("sql参数不能为空字符串或者null。");
}
Connection conn = null;
PreparedStatement pst = null;
ResultSet rst = null;
List l = new ArrayList();
try {
conn = DbConnection.getConn(); // 打开链接
pst = conn.prepareStatement(sql);// 开始执行sql
ResultSetMetaData rsmd = pst.getMetaData();
int columnCount = rsmd.getColumnCount();// 获取所有的列数;
String[] columnStr = new String[columnCount];
for (int i = 1; i <= columnCount; i++) {
columnStr[i - 1] = rsmd.getColumnName(i).toLowerCase();// 都转换为小写
}
rst = pst.executeQuery();
while (rst.next()) {
String[] tempObject = new String[columnCount];
for (int i = 0; i < columnCount; i++) {
tempObject[i] = rst.getObject(columnStr[i]) == null ? ""
: rst.getObject(columnStr[i]).toString(); // 如果key和value任意一个为null,均会抛出异常
}
l.add(tempObject);
}
if (l.size() < 1)
l = null;
} catch (SQLException e) {
log.error(sql + "语句查询出错!", e);
return null;
} finally {
closeAll(rst, pst, conn);
}
return l;
}
[b]问题补充:[/b]
代码是领导给的,让我直接从list调出hashmap,然后从hashmap取值,我对于集合类不了解,这方面知识欠缺,怎么写jsp代码,从list调出hashmap呢?