如何在 Java swing 中查看数据库结果集
Posted
技术标签:
【中文标题】如何在 Java swing 中查看数据库结果集【英文标题】:How to view database resultset in Java swing 【发布时间】:2012-07-31 06:45:55 【问题描述】:?我的选择是
-
jeditorpane
jtable.
查看该文件后,我想将文件保存在.rtf
或.pdf
中。这在 Java 桌面应用程序中怎么可能实现?
注意:请勿使用第三方 API 或库
【问题讨论】:
如果你想和第三者一起,我可以告诉你 到目前为止你做了什么?任何研究任何代码? 【参考方案1】:查看您的结果 - JTable 是您的最佳选择
保存结果,好吧,除非您想使用第三部分库,否则您的选择非常有限,除非您非常熟悉要使用的各种文件格式。
开箱即用,我想说 CVS 很容易实现。
【讨论】:
【参考方案2】:JTable
会做得最好,这是在JTable
上显示ResultSet
的代码
public static void main(String[] args) throws Exception
// The Connection is obtained
ResultSet rs = stmt.executeQuery("select * from product_info");
// It creates and displays the table
JTable table = new JTable(buildTableModel(rs));
JOptionPane.showMessageDialog(null, new JScrollPane(table)); // or can you other swing component
// Closes the Connection
方法buildTableModel:
public static DefaultTableModel buildTableModel(ResultSet rs)
throws SQLException
ResultSetMetaData metaData = rs.getMetaData();
// names of columns
Vector<String> columnNames = new Vector<String>();
int columnCount = metaData.getColumnCount();
for (int column = 1; column <= columnCount; column++)
columnNames.add(metaData.getColumnName(column));
// data of the table
Vector<Vector<Object>> data = new Vector<Vector<Object>>();
while (rs.next())
Vector<Object> vector = new Vector<Object>();
for (int columnIndex = 1; columnIndex <= columnCount; columnIndex++)
vector.add(rs.getObject(columnIndex));
data.add(vector);
return new DefaultTableModel(data, columnNames);
如果不使用 3rd 方 api
【讨论】:
以上是关于如何在 Java swing 中查看数据库结果集的主要内容,如果未能解决你的问题,请参考以下文章