高分求救,在线等,关于arraylist转hashtable的问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:25:23
<%
ArrayList showlist=null;
String name="userid";
//request.getParameter("user");

if(name!=null)
{
dbconn conn= new dbconn();
conn.DBconn();
System.out.println(name);
showlist=conn.executeQuery("select * from userinfo where userid=1");
Hashtable ht = (Hashtable)showlist.get(0);
conn.destory();
if(ht==null){
System.out.println("not available");
}
else{
System.out.println("dfsf");
}
String s="123";
System.out.println(s);
System.out.println(ht.get("userid").toString());

}
else{

}
%>

这是jsp里面的scriptlet的code。其他的都没什么地方有错,就是在
Hashtable ht = (Hashtable)showlist.get(0);
的时候出现http500的错误,各位牛人快来帮帮忙啊,我已经为这个问题扯了2天了啊~~~
public ArrayList<Hashtable<String, Object>> executeQuery(String sql){
try{
al=n

executeQuery方法返回的是ResultSet类型的
你怎么直接就给了ArrayList变量?
管用ArrayList就可以 你怎么还用HashTable干嘛?
不明白

Hashtable ht = (Hashtable)showlist.get(0);
这里返回的是ResultSet类型的对象,不能强制转换成Hashtable类型,你要先遍历这个ResultSet,获得你想要的数据并存入Hashtable,类似下面 这样
while(showlist.next()){
Sting username = showlist.get(0);
ht.put("username", username);
}