2012-07-31 57 views
0

如何在Java swing中查看数据库结果集?我的选择是如何在Java swing中查看数据库结果集

  1. 的JEditorPane
  2. JTable中。

查看该文件后,我想保存文件在.rtf.pdf。这在Java桌面应用程序中如何实现?

注:不要使用第三方API或库

+1

这功课吗? – 2012-07-31 06:47:39

+0

如果你想与第三方,那么我可以告诉你 – 2012-07-31 07:02:18

+0

你到目前为止做了什么?任何研究任何代码? – Sap 2012-07-31 07:05:09

回答

2

查看你的结果 - 的JTable是您的最佳选择

保存结果,那么,除非你想使用第三部分库,选项非常有限,除非您非常熟悉您要使用的各种文件格式。

开箱,我会说CVS很容易实现。

+0

或CSV? :)快乐的编码! – dbalakirev 2012-07-31 06:56:28

+0

@ dave00与PDF格式相同:P – MadProgrammer 2012-07-31 06:58:57

2

JTable会做最好的,这里是显示ResultSetJTable

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); 

} 

这将是很难出口数据PDFrtf不使用第三方API

相关问题