Probleminha com JDBC

bom resolvi fazer meu projeto final com o jdbc mesmo. porém tem um erro zinho que insiste em aparecer.

a conexão em sim com o MySQL eu resolvi separa-la do restante do código, criando assim, uma classe chamada Conexao:


public class Conexao
{

    public void conexao(String urlMysql)
    {
            try {
                //carrega o jconnectior no projeto
                Class.forName(urlMysql);
            } catch (ClassNotFoundException ex) {
                Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
            }

     }
    
    public void obterConexao(String jdbc, String url, String login, String senha){
            Connection connection = null;
            Conexao conexao =null;
            try {
                conexao.conexao(jdbc);
                //obtem a conexão com o banco de dados
                connection = DriverManager.getConnection(url, login, senha);
            } catch (SQLException ex) {
                Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

e o resto do código de manipulação do banco está aqui:

[code]
public class AlunoDAO {

public static void inserirAlu(int matricula, String nome, String email, 
        int cpf, String senha, int newsletter)
{
    try
    {
        Conexao conexao;
        conexao = obterConexao("com.mysql.jdbc.Driver",
                "jdbc:mysql://localhost:3306/mydb","root","alunolab");
    }catch( Exception exc )
    {
        System.out.println("não foi possível inserir a informação "+exc);
    }
    
    
}

}[/code]

neste “obterConexao” está dando um erro falando que os arqumentos está no tipo errado, mas conferi na clase Conexao está tudo certo, eu acho.
será que alguém pode me ajudar a encontrar a origem do problema?

Desde já muito agradecido:D

repare que vc está tentando atribuir o retorno de um método que é void(obterConexao)
a uma variável do tipo Conexao

para resolver:

   public Connection obterConexao(String jdbc, String url, String login, String senha){  
            Connection connection = null;  
            Conexao conexao =null;  
            try {  
                conexao.conexao(jdbc);  
                //obtem a conexão com o banco de dados  
                connection = DriverManager.getConnection(url, login, senha);  
            } catch (SQLException ex) {  
                Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);  
            }  
return connection;
        }  
    }  

E na chamada:

Connection con = new Conexao(). obterConexao("com.mysql.jdbc.Driver",  
                    "jdbc:mysql://localhost:3306/mydb","root","alunolab");  
      

[quote=raf4ever]repare que vc está tentando atribuir o retorno de um método que é void(obterConexao)
a uma variável do tipo Conexao[/quote]

Então, se o que você precisa é da Connection criada, mude o tipo do método para Connection e coloque um return no final do método, retornando a variável de conexão já criada.