Ola pessoal estou fazendo um exemplo de conexão com banco de dados
mais o que me parece no meu metod inserir os dados não são incluidos na base
vou passar o codigo pra ficar mais facil
public class Aula {
private Connection conn;
private PreparedStatement pstmt;
private Statement stmt;
private ResultSet rs;
Cliente cliente = new Cliente();
public void open() {
try {
// Carrenga um drive em tempo de execução
Class.forName("org.hsqldb.jdbcDriver");
System.out.println("Drive carregado");
// Tentando estabelecer uma conexão com banco de dados
conn = DriverManager.getConnection("jdbc:hsqldb:file:C:/banco/hsql/aula", "sa", "");
System.out.println("Conexão com banco de dados estabelecida");
} catch (ClassNotFoundException e) {
System.out.println("Erro ao carregar o drive");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("Erro ao tentar estabelecer uma conexão");
e.printStackTrace();
}
}
public void close() {
try {
if (stmt != null)
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
public void inserir() {
try {
cliente.setId(10);
cliente.setNome("Test");
//Abrindo a conexão com o banco
open();
//Instanciando o objeto statement (stmt)
stmt = conn.createStatement();
//Executando uma instrução sql.
stmt.executeUpdate("INSERT INTO ALUNO VALUES (" + cliente.getId() + ", '" + cliente.getNome() + "')");
// Fechando a conexão com o banco de dados
close();
} catch (SQLException e) {
// Fechando a conexão com o banco
close();
e.printStackTrace();
}
}
public ResultSet buscarAlunos() {
try {
open();
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT id, nome FROM ALUNO");
while (rs.next()) {
cliente.setId(rs.getInt("id"));
cliente.setNome(rs.getString("nome"));
System.out.println("ID: " + cliente.getId());
System.out.println("Nome: " + cliente.getNome());
}
close();
return rs;
} catch (SQLException e) {
close();
e.printStackTrace();
}
return null;
}
public static void main(String[] args) {
Aula aula = new Aula();
aula.inserir();
aula.buscarAlunos();
}
}