A classe TestaListagem está apresentando erro, apenas alterei os códigos de acordo com o que o professor está fazendo na aula, procurei entender o real motivo do erro, mas não consegui.
No erro diz que o método createStatement(); não está definido para o tipo CriaConexao. Segue código desta e das outras classes
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestaListagem {
public static void main(String[] args) throws SQLException {
CriaConexao criaConexao = new CriaConexao();
Connection connection = criaConexao.recuperarConexao();
Statement stm = criaConexao.createStatement();
stm.execute("Select id, nome, descricao from produto");
ResultSet rst = stm.getResultSet();
while(rst.next()) {
Integer id = rst.getInt("id");
System.out.println(id);
String nome = rst.getString("nome");
System.out.println(nome);
String descricao = rst.getString("descricao");
System.out.println(descricao);
}
connection.close();
}
}
import java.sql.Connection;
import java.sql.SQLException;
public class TestaConexao {
public static void main(String[] args) throws SQLException {
CriaConexao criaConexao = new CriaConexao();
Connection connection = criaConexao.recuperarConexao();
System.out.println("Fechando conexão");
connection.close();
}
}
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class CriaConexao {
public Connection recuperarConexao() throws SQLException {
return DriverManager.
getConnection("jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "BJn1A#VFiw!9");
}
}