java怎样将table里面的数据保存到数据库_java – 如何将已编辑的JTable数据保存到数据库?
时间: 2024-05-14 08:19:04 浏览: 67
可以按照以下步骤将已编辑的JTable数据保存到数据库中:
1. 获取JTable的数据模型和表格数据。
```
DefaultTableModel model = (DefaultTableModel) jTable.getModel();
Vector data = model.getDataVector();
```
2. 遍历数据行并将每行数据插入到数据库中。
```
for (int i = 0; i < data.size(); i++) {
Vector row = (Vector) data.get(i);
String name = (String) row.get(0);
int age = Integer.parseInt((String) row.get(1));
String address = (String) row.get(2);
// 将数据插入到数据库表中
String sql = "INSERT INTO mytable (name, age, address) VALUES ('" + name + "', " + age + ", '" + address + "')";
statement.executeUpdate(sql);
}
```
注意:上述代码仅供参考,实际应用中需要使用PreparedStatement等方式来避免SQL注入等安全问题。
3. 关闭数据库连接。
完整示例代码如下:
```
DefaultTableModel model = (DefaultTableModel) jTable.getModel();
Vector data = model.getDataVector();
try {
// 获取数据库连接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "password");
Statement statement = conn.createStatement();
// 遍历数据行并将每行数据插入到数据库中
for (int i = 0; i < data.size(); i++) {
Vector row = (Vector) data.get(i);
String name = (String) row.get(0);
int age = Integer.parseInt((String) row.get(1));
String address = (String) row.get(2);
// 将数据插入到数据库表中
String sql = "INSERT INTO mytable (name, age, address) VALUES ('" + name + "', " + age + ", '" + address + "')";
statement.executeUpdate(sql);
}
// 关闭数据库连接
statement.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
```
阅读全文