JAVA查询,总显示不出数据库里的内容

try{
Class.forName("com.mysql.jdbc.Driver");

Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root","12345678");

Statement st=conn.createStatement();
ResultSet rs=st.executeQuery("select*from dmbiao");

Vector data=new Vector();
while(rs.next()){
shuju stud=new shuju();
stud.setDM(rs.getString(1));
stud.setDNumber(rs.getInt(2));

}
rs.close();
st.close();
conn.close();

String []headers={"部门","部门编号"};
Object [][] s=new Object[data.size()][2];
for(int i=0;i<data.size();i++){
shuju xs=(shuju)data.get(i);
s[i][0]=xs.getDM();
s[i][1]=xs.getDNumber();

}
JTable table=new JTable(s,headers);
scrollPane.setViewportView(table);
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

}
});

while(rs.next()){
shuju stud=new shuju();
stud.setDM(rs.getString(1));
stud.setDNumber(rs.getInt(2));
data.add(stud);//加上这句
}

你查询出来后没有把他加到data里面去啊。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-10
遗漏了下面最后一行

Vector data=new Vector();
while(rs.next()){
shuju stud=new shuju();
stud.setDM(rs.getString(1));
stud.setDNumber(rs.getInt(2));

//把记录加到vector中
data.add(stud);
}
第2个回答  2012-09-10
Vector data=new Vector();
while(rs.next()){
shuju stud=new shuju();
stud.setDM(rs.getString(1));
stud.setDNumber(rs.getInt(2));
data.add(stud) //需要添加这行,将shuju存放在data对象中
}
第3个回答  2012-09-10
Vector data=new Vector();

这个没有赋值,这也是经常会被遗漏到地方拉
相似回答