Pessoal, esses dias na faculdade fiz uma classe que tem um metodo main chamando um metodo de uma outra classe que faz conexao com o MYSQL e da tudo certo.
Dai fui faze um projeto web simples pra testa a conexao usando a mesma classe para fazer a conexao, mas ta dando o seguinte erro:
“java.lang.ClassNotFoundException: com.mysql.jdbc.Driver”
Estranho que no projeto Java normal não da nada, mas no web da esse problema.
Segue o codigo que faz a conexao:
Método no servlet que chama o metodo com a conexao.
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class MeuServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public MeuServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException
{
Connection conn = new ContatoDao().conectar();
if( conn != null){
System.out.println("Conectou!");
}
}
}
Classe que é chamada e que faz a conexao:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ContatoDao {
public Connection conectar(){
String url = "jdbc:mysql://localhost/cdcol";
String usuario = "root";
String senha = "";
try{
System.out.println("conectando!");
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn = DriverManager.getConnection(url, usuario,
senha);
return conn;
}
catch(SQLException ex){
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
return null;
}
catch(Exception e){
System.out.println("Problemas ao tentar conectar com o banco de dados: " + e);
return null;
}
}
}
Alguem ai sabe o que ta dando de errado ?
Valeu!