Me ajudem com arquivo de conexão cm banco

4 respostas
G

O que tem de errado nesse arquivo o netbeans apresenta erros mas não sei o que e

4 Respostas

thiagocg

Vc fez todos os import’s??

Posta sua classe inteira ai pra dar uma olhada!

G

Tipo vamos la o arquivo de conexão da forma abaixo não apresenta nem um erro no netbeans, mas o meu arquivo TelaCadastro não consegue se comunicar com arquivo de conexão. ele da apenas um erro na linha onde tento chamar o arquivo de conexão.

public class TelaCadastro extends javax.swing.JFrame implements DataBaseConstantes{
package classes;

import java.sql.*;
import javax.swing.*;

/**
 *
 * @author jackson.santos
 */
public class DataBaseConstantes {

    final private String driver = "org.firebirdsql.jdbc.FBDriver";
    final private String url = "jdbc:firebirdsql:localhost/3050:c:/TrabalhoAVI/java.gdb";
    final private  String usuario = "sysdba";
    final private String senha = "masterkey";

    private Connection conexao;
    public Statement statement;
    public ResultSet resultset;

    public boolean conecta(){

        boolean result = true;

        try {
            Class.forName(driver);
            conexao = DriverManager.getConnection(url,usuario,senha);
        }
        catch(ClassNotFoundException Driver){
            JOptionPane.showMessageDialog(null, "Driver não localizado "+Driver);
            result=false;
        }
        catch(SQLException Fonte){
            JOptionPane.showMessageDialog(null, "Deu erro na conexão com o Banco de Dados "+Fonte);
        }   result=false;
        return result;
    }

    public void desconecta(){
        boolean result=true;
        try{
            conexao.close();
            JOptionPane.showMessageDialog(null, "Conexão Finalizada");
        }
        catch(SQLException erroSQL){
            JOptionPane.showMessageDialog(null, "Não foi possível finalizar a conexão com o banco de dados "+erroSQL.getMessage());
        }   result=false;
    }

    public void executeSQL(String sql){
        try{
            statement = conexao.createStatement();
            resultset = statement.executeQuery(sql);
        }
        catch(SQLException erroSQL){
            JOptionPane.showMessageDialog(null, "Não foi possível executar comando sql: "+sql+" "+erroSQL.getMessage());
        }
    }
  }
Aqui esta minha TelaCadastro.
package telas;
import classes.DataBaseConstantes;
import javax.swing.*;
import java.sql.*;
/**
 *
 * @author 19902003
 */
public class TelaCadastro extends javax.swing.JFrame implements DataBaseConstantes{
    
    public static Connection conexao = null;
//private String DRV;
    /** Creates new form TelaCadastro */
    public TelaCadastro() {
        initComponents();
    }

   
    private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jTextField3ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        String driver = null;
        // TODO add your handling code here:
                try {
			/* Instanciando a classe do driver através do seu nome */
			Class.forName( driver );
			System.out.println( "Driver JDBC carregado" );
		} catch ( ClassNotFoundException cnfe ) {
			System.out.println( "Driver JDBC não encontrado : " +
							   cnfe.getMessage() );
		}

		/* Criando conexão com o banco de dados */
		try {
			/* Obtendo a conexão com o banco de dados */
			conexao = DriverManager.getConnection(url, usuario, senha);
			System.out.println( "Conexão com o banco de dados estabelecida." );
		} catch ( SQLException sqle ) {
			System.out.println( "Erro na conexão ao Bando de Dados : " +
							            sqle.getMessage() );
		}
		
//		insere();


          try{

		/* Carregando o driver JDBC para um determinado SGBD */
				//System.out.println("Inserindo dados....");
         String sql = null;
     
              sql = "INSERT INTO AUTOMOVEL(codigo,marca) VALUES (?,?)";
              PreparedStatement ps = conexao.prepareStatement(sql);
              String codigo = jTextField1.getText();
              String marca = jTextField5.getText();
              ps.setString(1,codigo);
              ps.setString(2,marca);

              ps.executeUpdate();
    
    	
    	} catch ( SQLException sqle ) {
			System.out.println( "Erro na conexão ao Bando de Dados : " +
							            sqle.getMessage() );
		}	
	


	/* fechando a conexão com o SGBD */
		try {
			conexao.close();
			JOptionPane.showMessageDialog(null, "Dados Inseridos com sucesso");
			jTextField1.setText("");
			jTextField2.setText("");
			
			
			//System.out.println( "Conexão com o banco de dados fechada" );
		} catch ( SQLException sqle ) {
			System.out.println( "Erro no fechamento da conexão : " );
		}
    }                                        

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new TelaCadastro().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTextField jTextField3;
    private javax.swing.JTextField jTextField4;
    private javax.swing.JTextField jTextField5;
W

Meio estranho isso nao?

public class DataBaseConstantes
public class TelaCadastro extends javax.swing.JFrame implements DataBaseConstantes

Implementar classe ?

Vi que na primeira imagem que vc postou tava public interface DataBaseConstantes, que tb tava muito estranho porque vc tava implementando metodos dentro da interface. Isso nao se faz.

//Daniel

thiagocg

cara da uma revisado no seu codigo pq, primeiro, na tela cadastro vc ta fazendo a implementação de uma classe e isso não é possivel no java vc tem q implementar uma interface onde vc cria somente as assinaturas dos metodos, ai então em cada tela que vc implementar essa interface vc é obrigado a implementar dos metodos desejados!

vamos trocando ideia ai pra ajustar isso!

Abraço!

Criado 27 de setembro de 2008
Ultima resposta 27 de set. de 2008
Respostas 4
Participantes 3