Vector columnHeads = new Vector(); Vector rows = new Vector(); try {
String query = "SELECT * FROM studentsmessage"; statement = connection.createStatement(); resultSet = statement.executeQuery( query ); rsmd = resultSet.getMetaData(); for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) columnHeads.addElement( rsmd.getColumnName( i ) ); while ( resultSet.next() ) { Vector currentRow = new Vector(); for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) { currentRow.addElement( resultSet.getString( i ) ); } rows.addElement(currentRow); }
import java.sql.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.table.*;public class tableTest extends JFrame {
public static void main( String args[] )
{
new tableTest();
}
private Connection connection;
private Statement statement;
private ResultSet resultSet;
private ResultSetMetaData rsmd;
private JButton submitQuery;
private JTable table;
public tableTest()
{
super( "输入SQL语句,按提交按钮查看结果。" );
Container c = getContentPane();
c.setLayout( new BorderLayout() );
String url = "jdbc:odbc:空军国防生";
String username = "";
String password = "";
try
{
Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
connection = DriverManager.getConnection(
url, username, password );
}
catch ( ClassNotFoundException cnfex )
{
System.err.println("装载 JDBC/ODBC 驱动程序失败。" );
cnfex.printStackTrace();
System.exit( 1 );
}
catch ( SQLException sqlex )
{
System.err.println( "无法连接数据库" );
sqlex.printStackTrace();
System.exit( 1 );
}
Vector columnHeads = new Vector();
Vector rows = new Vector();
try
{
String query = "SELECT * FROM studentsmessage";
statement = connection.createStatement();
resultSet = statement.executeQuery( query );
rsmd = resultSet.getMetaData();
for ( int i = 1; i <= rsmd.getColumnCount(); ++i )
columnHeads.addElement( rsmd.getColumnName( i ) );
while ( resultSet.next() )
{
Vector currentRow = new Vector();
for ( int i = 1; i <= rsmd.getColumnCount(); ++i )
{
currentRow.addElement( resultSet.getString( i ) );
}
rows.addElement(currentRow);
}
}
catch ( SQLException sqlex )
{
sqlex.printStackTrace();
}
table = new JTable( rows, columnHeads );
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
try
{
for(int i = 0; i < rsmd.getColumnCount(); ++i )
{
TableColumn Col1 = table.getColumnModel().getColumn(i);
Col1.setPreferredWidth(100);
}
}
catch ( SQLException sqlex )
{
sqlex.printStackTrace();
}
JScrollPane scroller = new JScrollPane( table );
scroller.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
c.add( scroller, BorderLayout.CENTER );
//c.validate(); addWindowListener(
new WindowAdapter()
{
public void windowClosing( WindowEvent e )
{
System.exit( 0 );
}
}
);
setSize( 500, 200 );
show();
}
}