Pessoal. Estou com o seguinte problema: minha conexão com o banco de dados não está funcionando quando eu a chamo através de uma servlet.
Tenho uma classe para a conexão , uma página html onde tenho meu form e uma servlet que vai se encarregar de chamar a classe de conexão. Porém,
me notifiquei que o erro ocorre quando a classe de conexão é chamamda pela servlet pois quando a chamo diretamente através de um método main, ela se conecta com o banco normalmente.
public class Dao {
static final String driver = "com.mysql.jdbc.Driver";
private Connection conexao;
public void conectaBanco()
{
try
{
conexao = DriverManager.getConnection("jdbc:mysql://localhost/pessoa","root","");
Class.forName(driver);
}
catch(SQLException sqle){System.out.println("erro1");}
catch(ClassNotFoundException cnfe){System.out.println("Falha na Conexao. Banco não encontrado");}
}
public void adicionar(PessoaBean pessoa)// throws SQLException
{
try{
String sql = "insert into contatos(nome, endereco,email) values(?,?,?)";
PreparedStatement prep = conexao.prepareStatement(sql);
prep.setString(1,pessoa.getNome());
prep.setString(2,pessoa.getEndereco());
prep.setString(3,pessoa.getEmail());
//para teste
/*prep.setString(1,"teste");
prep.setString(2,"teste@");
prep.setString(3,"testeRua");*/
prep.execute();
conexao.close();
}
catch(SQLException sqle){System.out.println("erro de sintaxe sql2");}
catch(RuntimeException ee){;}
Alguém poderia me ajudar com a problemática?
OBS: minha servlet chama o método conectaBanco().
}