Estou tentando fazer a conexao com o banco mysql, soh que tah dando erro de ClassNotFoundException.
o interessante é que pelo NetBeans eu consigo conectar, ele até me mostra as tabelas e tudo( isso no explorer do netbeans), ai uso o mesmo driver pra iniciar a aplicacao e dah erro, eu copiei o código de conexão aqui do portaljava mesmo.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class conecta {
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 conecta() {
super();
hostName = "200.155.15.26";
userName = "vending";
password = "vending";
jdbcDriver = "com.mysql.jdbc.Driver";
dataBaseName = "vending";
dataBasePrefix = "jdbc:mysql://";
dabaBasePort = "3306";
url = dataBasePrefix + hostName + ":"+dabaBasePort+"/" + dataBaseName + "/";
}
public Connection getConnection() {
try {
if (con == null) {
Class.forName(jdbcDriver);
con = DriverManager.getConnection(url, userName, password);
JOptionPane.showMessageDialog(null,"Primeiro IF");
} else if (con.isClosed()) {
con = null;
JOptionPane.showMessageDialog(null,"Else");
return getConnection();
}
} catch (ClassNotFoundException e) {
//TODO: use um sistema de log apropriado.
JOptionPane.showMessageDialog(null,"Cath 1"); tah caindo nesse if aqui
e.printStackTrace();
} catch (SQLException e) {
//TODO: use um sistema de log apropriado.
JOptionPane.showMessageDialog(null,"Cath 2");
e.printStackTrace();
}
return con;
}
public void closeConnection() {
if (con != null) {
try {
con.close();
JOptionPane.showMessageDialog(null,"Close");
} catch (SQLException e) {
//TODO: use um sistema de log apropriado.
JOptionPane.showMessageDialog(null,"Close 2");
e.printStackTrace();
}
}
}
}
Não dá certo quando vc executa pela linha de comando, certo?
Quando vc executa pelo netbeans ele já carrega pra vc o driver no classpath, já pela linha de comando isso não é feito automático…
tem uma copia do arquivo JAR dentro da pasta LIB do NetBeans, ele executa por este endereco,
soh que qndo eu dou um PLAY ai dah pau,
mas no classpath dah o endereço certo, q soda!!!
consegui verificar que ele nao esta conseguindo achar o driver.
o driver tah em
C:\mysql-connector-java-3.0.11-stable\mysql-connector-java-3.0.11-stable-bin.jar
e no CLASSPATH do winXP (que eu uso) eu coloquei exatamentes este endereço lah em "Váriaveis de Sistema"
soh que qndo executo dah esta mensagem
e no netbeans agora eu tirei o arquivo do lib\ext pra ver se ele tava achando o classpath e também nao estao, dah erro nao foi possivel achar o driver.
alguem sabe o que pode estar errado?
[quote=“megadu”]consegui verificar que ele nao esta conseguindo achar o driver.
o driver tah em
C:\mysql-connector-java-3.0.11-stable\mysql-connector-java-3.0.11-stable-bin.jar
e no CLASSPATH do winXP (que eu uso) eu coloquei exatamentes este endereço lah em "Váriaveis de Sistema"
soh que qndo executo dah esta mensagem
e no netbeans agora eu tirei o arquivo do lib\ext pra ver se ele tava achando o classpath e também nao estao, dah erro nao foi possivel achar o driver.
alguem sabe o que pode estar errado?[/quote]
Amigo, vê se você pode me ajudar, tb estou usando netbeans com mysql e o meu problema é o seguinte, baixei o drive jdbc do mysql, instalei e apontei no class path os 3.jar que vem junto com o pacote, só que continua dando um erro de:No suitable driver
o meu código está assim:
//try{
Connection db = DriverManager.getConnection(“jdbc:mysql://127.0.0.1/acesso”, “root”, “”);
Statement sq_stmt = db.createStatement();
System.out.println(“conectou…”);
}catch(Exception e){
System.out.println(e);
return;
}
o meu eu consegui fazer uma “gambiarra”, tipo, copiei a pasta COM, que fica junto com o .JAR(mesmo diretorio)
para a pasta onde estao minhas classes
o meu resolveu, tenta ai
…achei q fosse só eu q estivesse apanhando com o driver do mysql no netbeans! seguinte, o netbeans ta cheio de variaveis classpath diferentes, uma pra compilação interna, outra externa, outra pra jars… é uma loucura, vcs encontram as configurações pra cada uma nos Options do netbeans, eu aqui coloquei o jar do mysql no classpath do sistema e pelo prompt eu compilo normal, mas, ao executar o codigo pelo netbeans com compilação externa, não roda de jeito nenhum, não consegui fazer o netbeans enxergar o driver externo nem a pau… nao quero deixar a aplicação dependente dele, por isso quero usar a compilação externa, e outra, como o meu exemplo é uma aplicação web, coloquei o jar do mysql em WEB-INF/lib direto na aplicação, e meeeeesmo assim o netbeans não acha o driver!!! :?
[quote=“megadu”]o meu eu consegui fazer uma “gambiarra”, tipo, copiei a pasta COM, que fica junto com o .JAR(mesmo diretorio)
para a pasta onde estao minhas classes
o meu resolveu, tenta ai[/quote]
Irmão, funcionou perfeitamente, agora ficou show de bola.