Java编程 jtable展示数据库数据 (jtable显示数据库)
Java编程:JTable展示数据库数据
在Java编程中,JTable是表格组件的一种,可以展示复杂的数据信息,例如数据库数据。本文将介绍如何使用Java Swing中的JTable组件展示数据库数据。
首先需要连接数据库,下面以MySQL为例:
“`java
String url = “jdbc:mysql://localhost:3306/db_name”;
String username = “root”;
String password = “password”;
Class.forName(“com.mysql.cj.jdbc.Driver”);
Connection con = DriverManager.getConnection(url, username, password);
“`
其中,url是数据库连接URL,db_name为数据库名称;username和password分别为数据库用户名和密码。
接下来,使用SQL查询语句获取数据:
“`java
Statement stmt = con.createStatement();
String sql = “SELECT * FROM table_name”;
ResultSet rs = stmt.executeQuery(sql);
“`
其中,table_name是要查询的表格名称。
将查询结果转化为二维数组:
“`java
ArrayList> data = new ArrayList();
ArrayList columnNames = new ArrayList();
ResultSetMetaData md = rs.getMetaData();
int columns = md.getColumnCount();
for (int i = 1; i
columnNames.add(md.getColumnName(i));
}
while (rs.next()) {
ArrayList row = new ArrayList(columns);
for (int i = 1; i
row.add(rs.getString(i));
}
data.add(row);
}
“`
其中,使用ArrayList来存储数据,便于后续展示。
创建JTable对象并将数据和表格头添加进去:
“`java
JTable table = new JTable();
DefaultTableModel model = new DefaultTableModel();
table.setModel(model);
for (String columnName : columnNames) {
model.addColumn(columnName);
}
for (ArrayList rowData : data) {
String[] row = new String[rowData.size()];
row = rowData.toArray(row);
model.addRow(row);
}
“`
在这一步中,也可以自定义表格头和模型,提供更好的用户体验。
最后将表格添加到Swing中:
“`java
crollPane scrollPane = new crollPane(table);
JFrame frame = new JFrame(“Database Table”);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(scrollPane);
frame.pack();
frame.setVisible(true);
“`
crollPane是Swing中提供的滚动面板组件,用于支持超出屏幕大小的控件。JFrame是Swing中的顶层容器,被设计为可以嵌套其他组件。其中,crollPane和JFrame的具体设置可以根据实际需要进行修改。