JTable展示MySQL数据库中数据
时间: 2023-09-18 15:10:21 浏览: 203
要JTable中展示MySQL数据库中的数据,您需要完成以下步骤:
1. 建立MySQL数据库连接。
2. 创建一个JFrame窗口,并在其中添加一个JTable组件。
3. 创建一个TableModel数据模型,并将其设置为JTable的数据模型。
4. 通过MySQL数据库连接查询数据,并将数据填充到TableModel中。
5. 最后,将TableModel设置为JTable的数据模型,即可在JTable中展示MySQL数据库中的数据。
下面是一个简单的Java代码示例,可以帮助您实现JTable展示MySQL数据库中的数据:
```java
import java.sql.*;
import javax.swing.*;
import javax.swing.table.*;
public class MySQLJTableExample extends JFrame {
private JTable table;
private DefaultTableModel tableModel;
public MySQLJTableExample() {
super("MySQL JTable Example");
// 创建JTable
table = new JTable();
// 创建数据模型
tableModel = new DefaultTableModel();
tableModel.addColumn("ID");
tableModel.addColumn("Name");
tableModel.addColumn("Age");
// 设置数据模型
table.setModel(tableModel);
// 添加JTable到窗口
JScrollPane scrollPane = new JScrollPane(table);
getContentPane().add(scrollPane);
// 查询MySQL数据
try {
// 建立MySQL数据库连接
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "mypassword";
Connection conn = DriverManager.getConnection(url, username, password);
// 查询数据
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT id, name, age FROM mytable");
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
Object[] row = { id, name, age };
tableModel.addRow(row);
}
// 关闭MySQL数据库连接
rs.close();
stmt.close();
conn.close();
} catch (SQLException e) {
System.out.println("MySQL database error: " + e.getMessage());
}
// 设置窗口属性
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new MySQLJTableExample();
}
}
```
注意:上述代码仅供参考,需要根据您的实际需求进行修改。同时,为了保证程序的安全性,建议您使用JDBC PreparedStatement来执行SQL查询语句,以避免SQL注入攻击。
阅读全文