Olá.
Fiz um código para puxar consultas de um banco de dados por JTable.
Só que quando vou rodar não acontece nada,não da nem saída de console.
Se alguém puder me ajudar.
Aí vai o código:
package TabelasB;
import java.sql.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.BorderLayout;
import java.util.*;
/**
* This code was generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* *************************************
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED
* for this machine, so Jigloo or this code cannot be used legally
* for any corporate or commercial purpose.
* *************************************
*/
public class Jtable extends JFrame {
private Connection connection;
private JScrollPane scroller;
private static JTable table;
public static void main(String args[]) {
}
public Jtable() throws SQLException {
super("Listagem geral dos Pacientes");
String url = "jdbc:odbc:bancodeDados.mdb";
{
JScrollPane scroller = new JScrollPane(table);
this.getContentPane().add(scroller, BorderLayout.CENTER);
new java.awt.Dimension(-27, 110);
{
table = new JTable();
scroller.setViewportView(table);
}
}
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException Erro) {
Erro.printStackTrace();
}
Connection Conexao = null;
try {
Conexao = DriverManager.getConnection(
"jdbc:odbc:BancodeDados", "", "");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Statement FluxoSQL = Conexao.createStatement();
Statement InstrucaoSelectSQL = Conexao.createStatement();
ResultSet Resultados = InstrucaoSelectSQL
.executeQuery("SELECT idobra,nome, tipomaterial, status, editora,localdearmazenamento,autor FROM obra");
getTable();
setSize(800,370);
setLocation(5,20);
}
private void getTable()
{
Statement statement;
ResultSet resultset;
try {
String query ="SELECT idobra,nome, tipomaterial, status, editora,localdearmazenamento,autor FROM obra";
statement = connection.createStatement();
resultset = statement.executeQuery(query);
displayResultSet(resultset);
statement.close();
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
}
}
private void displayResultSet(ResultSet rs )
throws SQLException
{
boolean moreRecords = rs.next();
if (! moreRecords) {
JOptionPane.showMessageDialog(this, "Nao existem registros na tabela");
setTitle("Registros vazios");
return;
}
setTitle("Listagem Geral dos dados - Tabela obra - bancodeDados");
Vector columnHeads = new Vector();
Vector rows = new Vector();
try {
ResultSetMetaData rsmd = rs.getMetaData();
for (int i = 1; i <= rsmd.getColumnCount(); ++i)
columnHeads.addElement(rsmd.getColumnName(i));
do {
rows.addElement(getNextRow(rs, rsmd));
} while (rs.next());
validate();
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
}
}
private Vector getNextRow( ResultSet rs, ResultSetMetaData rsmd)
throws SQLException
{
Vector currentRow = new Vector();
for (int i = 1; i <= rsmd.getColumnCount(); ++i)
switch(rsmd.getColumnType(i)) {
case Types.VARCHAR: currentRow.addElement(rs.getString(i));
break;
case Types.INTEGER:currentRow.addElement(new Long(rs.getLong(i)));
break;
case Types.CHAR:currentRow.addElement(rs.getString(i));
break;
default: System.out.println("Tipo de Dados: " + rsmd.getColumnTypeName(i));
}
return currentRow;
}
public void shutDown()
{
try {
connection.close();
}
catch (SQLException sqlex) {
System.err.println("Nao foi possivel desconectar.");
sqlex.printStackTrace();
}
}
public static void montatable() throws SQLException
{
try { //Faz o aplicativo ter aparências.
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
} catch (Exception exc) {
System.err.println("Error loading L&F: " + exc);
}
final Jtable app = new Jtable();
app.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e)
{
app.shutDown();
System.exit(0);
}
}
);
}
}