
import java.sql.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class IBTeste  extends JFrame
{

	private Connection DBConn;
	private JTable table;
	private DBConnect dbConnect;

	public IBTeste()
	{

  		this.setBounds(50,50, 400,200);
  		this.setTitle("TABLE/DB");

		dbConnect = new DBConnect();
		DBConn = dbConnect.IBConnect("opt/interbase/examples/employee.gdb");

		getTable();
		setSize(450, 150);
		show();

	}


	private void getTable()
	{

		Statement stmt;
		ResultSet rst;
		String query;

		query = "SELECT * FROM employee";

		try
		{
			stmt = DBConn.createStatement();
			rst = stmt.executeQuery( query );

	   		Vector data = new Vector();
   			while(rst.next())
   			{
    			Vector linha = new Vector();
    			linha.addElement(rst.getString("FIRST_NAME"));
    			linha.addElement(rst.getString("PHONE_EXT"));
    			data.addElement(linha);
   			}

   			Vector nomecols = new Vector();
   			nomecols.addElement("NOME");
   			nomecols.addElement("TELEFONE");
   			table = new JTable(data, nomecols);

   			stmt.close();
   			DBConn.close();

   			System.out.println("Operacao realizada com sucesso!");

  			JScrollPane pn1= new JScrollPane(table);
  			getContentPane().add(pn1);
		}
		catch( Exception ex )
		{
		      System.out.println("ERRO: "+ex);
		}

	}


	public static void main( String args[] )
	{
		final IBTeste app = new IBTeste();

		app.addWindowListener(
			new WindowAdapter()
			{
				public void windowClosing( WindowEvent e )
				{
					app.shutDown();
					System.exit(0);
				}
			}
		);
	}


	public void shutDown()
	{
		try
		{
			DBConn.close();
		}
		catch( SQLException sqlex )
		{
			System.err.println("Unable to disconnect");
			sqlex.printStackTrace();
		}
	}

}

