Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

7 respostas Resolvido
Victor_Vinicios

Não consigo conectar no meu banco de dados um programa simples de login, poderia ser algum erro no código do programa?
segue o código abaixo:
package Conection;

import java.sql.*;

public class ModuloConection {

public static Connection conector() {
    java.sql.Connection Conexao = null;
    String url = "jdbc:mysql://localhost:3306/javalogin";// drive servidor e banco de dados a serem utilizados e indica??o do banco a ser utilizado
String user ="root";// usuario do banco de dados
String password ="admin";//senha do usuario do banco de dados
try {

String driver = null;

Class.forName(driver);

Conexao = DriverManager.getConnection(url, user, password);

return Conexao;
}

catch (ClassNotFoundException | SQLException ex) {

System.out.println(ex);

return null;

}

}

}

7 Respostas

PedreiroDeSoftware

Tem que inicializar a variável driver.
Ela está vazia.
Da erro na linha seguinte:

I

Complementando o que disse o @PedreiroDeSoftware:

String driver = "com.mysql.jdbc.Driver";

ou

String driver = "com.mysql.cj.jdbc.Driver";

a depender da versão do conector.

Victor_Vinicios

a versão do meu conector é 8.0.18

eu inicializei a variável drive assim:
package Conection;

import java.sql.*;

public class ModuloConection {

public static Connection conector() {
    java.sql.Connection Conexao = null;
    String url = "jdbc:mysql://localhost:3306/javalogin";
    String user = "root";
    String password = "admin";
    String driver = "com.mysql.cj.jdbc.Driver";

    try {
        String Driver = null;
        Class.forName(Driver);
        Conexao = DriverManager.getConnection(url, user, password);
        return Conexao;

    } catch (ClassNotFoundException | SQLException ex) {
        System.out.println(ex);
        return null;
    }
}

}

E continua dando erro:

Exception in thread AWT-EventQueue-0 java.lang.NullPointerException

at java.lang.Class.forName0(Native Method)

at java.lang.Class.forName(Class.java:264)

at Conection.ModuloConection.conector(ModuloConection.java:16)

at View.Login.(Login.java:22)

at View.Login$1.run(Login.java:123)

at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)

at java.awt.EventQueue.access$500(EventQueue.java:97)

at java.awt.EventQueue$3.run(EventQueue.java:709)

at java.awt.EventQueue$3.run(EventQueue.java:703)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
PedreiroDeSoftware

Deixe assim:

Class.forName(driver);

Apague a instrução String Driver = null;

Driver e driver são objetos distintos, pois java é sensível a letras maiúsculas, case sensitive.

Victor_Vinicios

Continua aparecendo um erro:
java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long

PedreiroDeSoftware
Solucao aceita

Já é outro erro, não é mais nullPointerException.
Imprima a classe que tem um objeto BigInteger.
Imprima o erro completo, olhe a linha onde o erro ocorre.

Jhonatas_Tomaz

Remova esses campos pois não são necessários o jdbc procura o driver automáticamente

Criado 26 de novembro de 2019
Ultima resposta 27 de nov. de 2019
Respostas 7
Participantes 4