Vc esqueçeu de por o driver do mysql no seu classpath.
Geralmente esse driver vem no formato de um arquivo com extensão jar.
Veja esse tutorial para compreende melhor o classpath
Errado…vc não precisa criar uma variavel só para o driver do mysql, apenas acrescente o valor da variavel no final da variavel CLASSPATH (se não tiver crie)
Quase
CLASSPATH=.;%JAVA_HOME%;C:\Developer Files\Banco de Dados\MySQL Connector Java 3.1.1.6\mysql-connector-java-3.1.6\mysql-connector-java-3.1.6-bin.jar
Agora testa
Vejamos:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
Significa que a classe não foi encontrada.
Coloque o seu catch assim:
} catch (ClassNotFoundException e) {
System.out.println("Classnotfound!");
System.out.println("MSG : " + e.getMessage());
e.printStackTrace();
E ai compare essa mensagem:
Classnotfound!
MSG : com.mysql.jdbc.Driver
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
(…)
E ai, cade o com.mysql.jdbc.Driver ?
Olá amigo!,
Cara seguinte todo mundo erra quando trabalha com JDBC…
Seguinte vc está expecificando o “.jar” do mysql fora de acesso ao seu projeto… coloque esse jar num local “acessivel” para o seu projeto… de preferivel na raiz.
Tire o exemplo que ele esta procurando:
com.mysql.jdbc.Driver
ou seja:
“Raiz”/com/mysql/jdbc/Driver
e não C:\arquivos de programas\bla bla bla…
Eu estou com o mesmíssimo problema…
O classpath ja ta arrumadinho… o estranho é q tava funcionando e agora, do nada, nao conecta de jeito nenhum!
Nao entendi essa última parte… o teria q fazer exatamente?
Meus companheiros . . . já naum sei mas o que fazer e algumas soluções que foram sugeridas naum entendei perfeitamente
Minha situação atual é a seguinte:
CLASSPATH = .;%JAVA_HOME%;C:\Arquivos de programas\Java\jdk1.6.0_02\mysql-connector-java-5.1.2-beta-bin.jar;F:\Meus documentos\Sistemas de Informação\4ºSemestre\Linguagem de Programação II
JAVA_HOME = C:\Arquivos de programas\Java\jdk1.6.0_02
Path = %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;;C:\php;C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin;C:\Arquivos de programas\Microsoft SQL Server\90\Tools\binn;%JAVA_HOME%\bin
Tenho o seguinte conector/J mysql-connector-java-5.1.2-beta-bin.jar que está localizado em C:\Arquivos de programas\Java\jdk1.6.0_02
Estou trabalhando em um projeto de nome SisExemplo que cria um pacote package sisexemplo;.
Certo pessoal?Vou por o fonte da classe que estou usando pra fazer a conexão tb.
package sisexemplo;
import java.sql.*;
public class MinhaConexaoJdbc {
private Connection con = null;
private String hostName = null;
private String userName = null;
private String password = null;
private String url = null;
private String jdbcDriver = null;
private String dataBaseName = null;
private String dataBasePrefix = null;
private String dabaBasePort = null;
public MinhaConexaoJdbc() {
super();
hostName = "localhost";
userName = null;
password = null;
jdbcDriver = "com.mysql.jdbc.Driver";
dataBaseName = "alpha";
dataBasePrefix = "jdbc:mysql://";
dabaBasePort = "3306";
url = dataBasePrefix + hostName + ":"+dabaBasePort+"/" + dataBaseName + "/";
}
public Connection getConectar() {
try {
if (con == null) {
Class.forName(jdbcDriver);
con = DriverManager.getConnection(url, userName, password);
} else if (con.isClosed()) {
con = null;
return getConectar();
}
} catch (ClassNotFoundException e) {
System.out.println("Classnotfound!");
System.out.println("MSG : " + e.getMessage());
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
}
Utilizo a classe acima no click de um botão, da seguinte forma . . .
private void btnConexaoActionPerformed(java.awt.event.ActionEvent evt) {
MinhaConexaoJdbc conexao = new MinhaConexaoJdbc();
Connection c = conexao.getConectar();
}
Por favor, alguém dê uma analizada e me de um retorno, mesmo se for pra dizer que naum sabe o que está errado.
Meus companheiros . . . já naum sei mas o que fazer e algumas soluções que foram sugeridas naum entendei perfeitamente
Minha situação atual é a seguinte:
CLASSPATH = .;%JAVA_HOME%;C:\Arquivos de programas\Java\jdk1.6.0_02\mysql-connector-java-5.1.2-beta-bin.jar;F:\Meus documentos\Sistemas de Informação\4ºSemestre\Linguagem de Programação II
JAVA_HOME = C:\Arquivos de programas\Java\jdk1.6.0_02
Path = %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;;C:\php;C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin;C:\Arquivos de programas\Microsoft SQL Server\90\Tools\binn;%JAVA_HOME%\bin
Tenho o seguinte conector/J mysql-connector-java-5.1.2-beta-bin.jar que está localizado em C:\Arquivos de programas\Java\jdk1.6.0_02
Estou trabalhando em um projeto de nome SisExemplo que cria um pacote package sisexemplo;.
Certo pessoal?Vou por o fonte da classe que estou usando pra fazer a conexão tb.
package sisexemplo;
import java.sql.*;
public class MinhaConexaoJdbc {
private Connection con = null;
private String hostName = null;
private String userName = null;
private String password = null;
private String url = null;
private String jdbcDriver = null;
private String dataBaseName = null;
private String dataBasePrefix = null;
private String dabaBasePort = null;
public MinhaConexaoJdbc() {
super();
hostName = "localhost";
userName = null;
password = null;
jdbcDriver = "com.mysql.jdbc.Driver";
dataBaseName = "alpha";
dataBasePrefix = "jdbc:mysql://";
dabaBasePort = "3306";
url = dataBasePrefix + hostName + ":"+dabaBasePort+"/" + dataBaseName + "/";
}
public Connection getConectar() {
try {
if (con == null) {
Class.forName(jdbcDriver);
con = DriverManager.getConnection(url, userName, password);
} else if (con.isClosed()) {
con = null;
return getConectar();
}
} catch (ClassNotFoundException e) {
System.out.println("Classnotfound!");
System.out.println("MSG : " + e.getMessage());
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
}
Utilizo a classe acima no click de um botão, da seguinte forma . . .
private void btnConexaoActionPerformed(java.awt.event.ActionEvent evt) {
MinhaConexaoJdbc conexao = new MinhaConexaoJdbc();
Connection c = conexao.getConectar();
}
Por favor, alguém dê uma analizada e me de um retorno, mesmo se for pra dizer que naum sabe o que está errado.
tb estou tendo este problema
se alguém puder nos ajudar né
Caros,
Estou com o mesmo problema só que no meu caso eu to com um problema no jsp, coloquei o mysql connector no lib do tomcat, no ext do jre e criei a variavel class_path como segue:
.;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\connector.jar
sendo que eu renomiei mysql-connector… para connector.jar mesmo assim na pagina de conexao da um erro:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
O que pode ser feito?
O primeiro passo para efetuar a conexão Java + MySQL é baixar o driver que fará a ponte entre a linguagem Java e o banco de dados MySQL. A versão mais recente deste driver é chamada de MySQL Connector/J e pode ser baixada no endereço http://dev.mysql.com/downloads. Durante a autoria deste artigo, o nome do arquivo a ser baixado era semelhante à mysql-connector-java-3.1.12.zip.
Após baixar o driver, é hora de configurá-lo em seu sistema. A configuração é bem simples e em alguns casos envolve apenas descompactar e mover o arquivo para um determinado diretório. As instruções a seguir se aplicam ao Windows, porém, pouca coisa muda na instalação em Linux.
Passo 1: Baixe o driver e descompacte-o em um diretório de sua preferência;
Passo 2: Se for usar o driver em aplicativos Java (e não em aplicações web), adicione o
jar “mysql-connector-java-3.1.12-bin.jar” no CLASSPATH de seu sistema. Se você colocou o arquivo em C:\java, a entrada seguinte deverá ser adicionada à variável CLASSPATH do sistema:
C:\java\mysql-connector-java-3.1.12-bin.jar
Passo 3: Teste se o driver pode ser carregado com sucesso a partir de um aplicativo. Veja o código que pode ser usado para esta finalidade:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class CarregarDriver{
public static void main(String[] args) {
try {
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
System.out.println(“Driver carregado com sucesso!”);
}
catch (Exception ex) {
System.out.println(“Driver nao pode ser carregado!”);
}
}
}
Dica:
Se o driver não puder ser carregado através do CLASSPATH experimente copiar o arquivo mysql-connector-java-3.1.12-bin.jar para o diretório C:\java\jre\lib\ext (o seu deve ser bem parecido). Em nossos testes esta foi a forma mais adequada de carregar o driver.
A exceção ClassNotFoundException
Um dos problemas mais comuns encontrados por usuários menos experientes, é o tratamento da exceção:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
Esta exceção ocorre quando o driver não pode ser localizado. Revise as dicas sobre como disponibilizá-lo.
Muito obrigado mano, deu certo, Deus te abençoe!
Num tem de que brother!!! :-o
Me foi muito útil as respostas às perguntas deste forum …Muito bom mesmo.
Olá! E se eu for utilizar o conector para aplicacoes web, o que é o meu caso, o que deve ser diferente nos passos listados?
Obrigada
na utilização de um JDBC, pq este código não dá certo:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class JDBCExemplo {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection(
"jdbc:mysql://localhost/BANCO_DE_DADOS?user=root&password=root");
System.out.println("Conectado!");
con.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
o erro devolvido pelo console é:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at JDBCExemplo.main(JDBCExemplo.java:10)
como resolver?
coloquei sim, na Variáveis do Sistema (dentro do Variáveis de ambinente no XP). ficou assim:
Nome da variável: mysql connector
Valor da variável: C:\Developer Files\Banco de Dados\MySQL Connector Java 3.1.1.6\mysql-connector-java-3.1.6\mysql-connector-java-3.1.6-bin.jar
certo ou errado?
ver se eu entendi:
na variável CLASSPATH adicionar mysqlconnector = valor;
ficou assim:
CLASSPATH=.;%JAVA_HOME%;mysql connector=C:\Developer Files\Banco de Dados\MySQL Connector Java 3.1.1.6\mysql-connector-java-3.1.6\mysql-connector-java-3.1.6-bin.jar
Certo ou errado?
Erro:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at JDBCExemplo.main(JDBCExemplo.java:10)
to desconfiando da parte desse código:
DriverManager.getConnection(
“jdbc:mysql://localhost/BANCO_DE_DADOS?user=root&password=root”);
localhost? BANCO_DE_DADOS? não teria que ter mysql e o seu endereço?