java jtable 为什么表格里面没有内容
publicvoidsetTable(ResultSetrs)throwsSQLException{Vector<String>title=newVector<Strin...
public void setTable(ResultSet rs) throws SQLException{
Vector<String> title=new Vector<String>();
title.add("姓名");
title.add("性别");
title.add("生日");
title.add("关系");
title.add("电子邮件");
title.add("所在学校");
title.add("家庭住址");
title.add("备注");
DefaultTableModel dm=new DefaultTableModel(title,50);
Vector<Vector<String>> data=new Vector<Vector<String>>();
Vector<String> d=new Vector<String>();
while(rs.next()){
d.add(rs.getString("name"));
d.add(rs.getString("sex"));
d.add(rs.getString("brithday"));
d.add(rs.getString("relatuion"));
d.add(rs.getString("email"));
d.add(rs.getString("school"));
d.add(rs.getString("adress"));
d.add(rs.getString("other"));
dm.addRow(d);
d.clear();
}
table.setModel(dm);
tabpane.setViewportView(table);
}
在线等!!! 展开
Vector<String> title=new Vector<String>();
title.add("姓名");
title.add("性别");
title.add("生日");
title.add("关系");
title.add("电子邮件");
title.add("所在学校");
title.add("家庭住址");
title.add("备注");
DefaultTableModel dm=new DefaultTableModel(title,50);
Vector<Vector<String>> data=new Vector<Vector<String>>();
Vector<String> d=new Vector<String>();
while(rs.next()){
d.add(rs.getString("name"));
d.add(rs.getString("sex"));
d.add(rs.getString("brithday"));
d.add(rs.getString("relatuion"));
d.add(rs.getString("email"));
d.add(rs.getString("school"));
d.add(rs.getString("adress"));
d.add(rs.getString("other"));
dm.addRow(d);
d.clear();
}
table.setModel(dm);
tabpane.setViewportView(table);
}
在线等!!! 展开
展开全部
dm是model啊,怎么往model里加集合呢,应该加到data这个集合里
public void setTable(ResultSet rs) throws SQLException{
Vector<String> title=new Vector<String>();
title.add("姓名");
title.add("性别");
title.add("生日");
title.add("关系");
title.add("电子邮件");
title.add("所在学校");
title.add("家庭住址");
title.add("备注");
Vector data=new Vector();
while(rs.next()){
Vector<String> d=new Vector<String>();
d.add(rs.getString("name"));
d.add(rs.getString("sex"));
d.add(rs.getString("brithday"));
d.add(rs.getString("relatuion"));
d.add(rs.getString("email"));
d.add(rs.getString("school"));
d.add(rs.getString("adress"));
d.add(rs.getString("other"));
data.add(d);
}
DefaultTableModel dm=new DefaultTableModel(title,data){
public Class<?> getColumnClass(int row,int column) {
return getValueAt(row, column).getClass();
}
};
table=new JTable(dm);
tabpane.setViewportView(table);
}
能行吗?试试
public void setTable(ResultSet rs) throws SQLException{
Vector<String> title=new Vector<String>();
title.add("姓名");
title.add("性别");
title.add("生日");
title.add("关系");
title.add("电子邮件");
title.add("所在学校");
title.add("家庭住址");
title.add("备注");
Vector data=new Vector();
while(rs.next()){
Vector<String> d=new Vector<String>();
d.add(rs.getString("name"));
d.add(rs.getString("sex"));
d.add(rs.getString("brithday"));
d.add(rs.getString("relatuion"));
d.add(rs.getString("email"));
d.add(rs.getString("school"));
d.add(rs.getString("adress"));
d.add(rs.getString("other"));
data.add(d);
}
DefaultTableModel dm=new DefaultTableModel(title,data){
public Class<?> getColumnClass(int row,int column) {
return getValueAt(row, column).getClass();
}
};
table=new JTable(dm);
tabpane.setViewportView(table);
}
能行吗?试试
追问
java.lang.String cannot be cast to java.util.Vector
%>_<%
追答
rs.getString("other")是String类型的值吗?
强制转化一下行不?
d.add((String)rs.getString("name"));
data.add((Vector)d);
展开全部
不能用ResultSet 作为参数传递,看一下错误信息里应该有数据库已关闭的提示。必须把ResultSet循环把数据保存到Vector或其它集合中,然后再遍历读取填到表里。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是动态加行的话,可以直接初始化到JTable里。
动态加行的话,可以用下面的方法。
DefaultTableModel tableModel = (DefaultTableModel) jt1.getModel();
tableModel.addRow(new Object[]{"name","sex","brithday","relatuion","email","school","adress","other"});
动态加行的话,可以用下面的方法。
DefaultTableModel tableModel = (DefaultTableModel) jt1.getModel();
tableModel.addRow(new Object[]{"name","sex","brithday","relatuion","email","school","adress","other"});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询