Oi pessoal, boa tarde. Estou inplementando uma agenda mas estou tendo problema em um local específico e não estou sabendo indentificar a resolução. Imagino que seja algo bobo. Na classe ContatoBD eu chamo o método getConexao da classe ConexaoBD, mas está dando erro na linha this.connection = new ConexaoBD.getConexaoBD(); , especificamente em ConexaoBD.getConexaoBD(); . O Eclipse diz “ConexaoBD.getConexaoBD() cannot be resolved to a type”.
Sou inciante e sei que posso ter cometido erro bobo, mas nao estou conseguindo resolver. Segue abaixo o código completo do projeto Agenda, que está implementado em 3 pacotes e 4 classes:
+ Contato.java
package br.edu.ufabc.agenda.contato;
public class Contato {
private Long id;
private String nome;
private String email;
private String endereco;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
}
+ ConexaoBD.java
package br.edu.ufabc.agenda.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
public class ConexaoBD {
public Connection getConexaoBD() {
System.out.println("Conectando ao banco de dados...");
try {
String url = "jdbc:mysql://localhost/agendadb";
return DriverManager.getConnection(url, "root", "root");
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
+ ContatoBD.java
package br.edu.ufabc.agenda.jdbc;
import br.edu.ufabc.agenda.contato.Contato;
import br.edu.ufabc.agenda.jdbc.ConexaoBD;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ContatoBD {
private Connection connection;
public ContatoBD() {
this.connection = new ConexaoBD.getConexaoBD();
}
public void insere(Contato contato) {
String sql = "insert into contatos (nome, email, endereco) values (?,?,?)";
try {
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setString(1, contato.getNome());
stmt.setString(2, contato.getEmail());
stmt.setString(3, contato.getEndereco());
stmt.execute();
stmt.close();
}catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
+ CriaContato.java
package br.edu.ufabc.agenda.tarefas;
import br.edu.ufabc.agenda.contato.Contato;
import br.edu.ufabc.agenda.jdbc.ContatoBD;
public class CriaContato {
public static void main(String[] args) {
Contato contato = new Contato();
contato.setNome("Jack");
contato.setEmail("jack@gmail.com");
contato.setEndereco("Av. dos Estados, 5001");
contato.setId((long) 3);
System.out.println(contato.getNome());
System.out.println(contato.getEmail());
System.out.println(contato.getEndereco());
System.out.println(contato.getId());
ContatoBD bd = new ContatoBD();
bd.insere(contato);
System.out.println("Gravado!");
}
}