所以我有一个从mysql数据库中检索数据的方法,并将其存储在二维数组'values [i] [k]';
其中i表示每个单独的记录,k表示记录中的每个值。 如何将此对象添加到JTable?
表中的值看起来像这样,但是我想让它自动完成,而不是我必须手动写出来......
值[0] [0],值[0] [1],值[0] [2],值[0] [3];
值[1] [0],值[1] [1],值[1] [2],值[1] [3];
值[2] [0],值[2] [1],值[2] [2],值[2] [3];
值[3] [0],值[3] [1],值[3] [2],值[3] [3];
请记住,值i和k可以是任何数字,而不是固定值。
感谢任何帮助,提前谢谢:)
答案 0 :(得分:4)
您无需创建二维数组来暂时保存数据。
在读取ResultSet中的每一行时,可以使用addRow(...)
的{{1}}方法。
答案 1 :(得分:2)
所以我有一个方法从mysql数据库中检索数据
由于您有从数据库检索数据并希望将其存储在表中的方法,您可以这样做:
//全球宣言
private Vector<Vector<String>> data; //used for data from database
private Vector<String> header; //used to store data header
//向JTable显示信息
data = get();
//create header for the table
header = new Vector<String>();
header.add("Column1");
header.add("Column2");
...
model=new DefaultTableModel(data,header);
table = new JTable(model);
这将帮助您从数据库中获取数据
get(){
Vector<Vector<String>> doublevector = new Vector<Vector<String>>();
Connection conn = dbConnection();//Your Database connection code goes in dbConnection()
PreparedStatement pre1 = conn.prepareStatement("select * from Table");
ResultSet rs1 = pre1.executeQuery();
while(rs1.next())
{
Vector<String> singlevector = new Vector<String>();
singlevector.add(rs1.getString(1));
singlevector.add(rs1.getString(2));
....
doublevector.add(singlevector);
}
return doublevector;
}