在java中使用sql查询语句的结果想用表格表示出来,把表格内容值存储在Object[][] data中,但是一般赋值语句会出现问题,求问应该用哪种方法赋值?
代码如下:
Object[][] data = null;// 数据
while (rs.next()) {
res = res + rs.getString("num") + rs.getString("class")
+ rs.getString("name") +rs.getString("f") + rs.getString("age")
+ rs.getString("addr")+ rs.getString("sex");
System.out.println("查询结果:"+res);
// data[n][] = {rs.getString("num"),rs.getString("class"),rs.getString("name"),
// rs.getString("f"),rs.getString("age"),rs.getString("addr"),
// rs.getString("sex")};
data[n][0] = rs.getString("num");
data[n][1] = rs.getString("class");
data[n][2] = rs.getString("name");
data[n][3] = rs.getString("f");
data[n][4] = rs.getString("age");
data[n][5] = rs.getString("addr");
data[n][6] = rs.getString("sex");
n++;
for (int i=0;i<7;i++)
System.out.println(data[n][i]);
}
你这样封装数据不大好,即使封装好了,用的时候取出来也很麻烦:就好声明学生Student类:包含你上面的属性:num class等,把你去取出的数据放到
Student类的对象里,然后,在把对象放到:ArrayList里面:
ArrayList student=new ArrayList();
while(rs.next()){
Student st=new Student();
st.num = rs.getString("num");
st.class= rs.getString("class");
st.name= rs.getString("name");
st.f= rs.getString("f");
st.age = rs.getString("age");
st.addr = rs.getString("addr");
st.sex = rs.getString("sex");
student.add(st);
}
//这里你就可以遍历你封装好的数据了
Object[][] data = new Object[多少行][];
循环里
data[i] = new Object[多少列];
再赋值
如果事先不知道行列,那么用ArrayList动态添加