Olá estou com dificuldade em criar alguns métodos (primeiro, anterior, próximo, ultimo), usando o Statement conseguiria fazendo algo assim…
private Connection con;
private Statement stmt;
private ResultSet rsNavegar;
private Statement stmtNavegar;
public AlunoDAO() throws ClassNotFoundException, SQLException {
con = FactoryConect.getConnection();
stmt = con.createStatement();
stmtNavegar = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
rsNavegar = stmtNavegar.executeQuery("select * from aluno");
}
public Aluno primeiro() throws SQLException {
if (rsNavegar.first()) {
Aluno aluno = new Aluno();
aluno.setCod(rsNavegar.getInt("cod"));
aluno.setNome(rsNavegar.getString("nome"));
aluno.setSobrenome(rsNavegar.getString("Sobrenome"));
aluno.setIdCidade(rsNavegar.getInt("idcidade"));
return aluno;
} else {
return null;
}
}
mas e com o prepareStatement
tem como fazer ? se sim alguém pode dar um exemplo?
Com o preparedstatement você teria que preencher uma ArrayList de elementos, ao qual poderia percorrer usando um for each, ou usando o get(i).
public ArrayList<Aluno> buscaAlunos( ) thows SQLException{
ArrayList<aluno> alunos = new ArrayList<>();
while(rsNavegar.next()){
Aluno aluno = new Aluno();
aluno.setCod(rsNavegar.getInt("cod"));
aluno.setNome(rsNavegar.getString("nome"));
aluno.setSobrenome(rsNavegar.getString("Sobrenome"));
aluno.setIdCidade(rsNavegar.getInt("idcidade"));
alunos.add(aluno);
}
return alunos;
}
Usando Statement
:
Statement stmtNavegar = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rsNavegar = stmtNavegar.executeQuery("select * from aluno");
Usando PreparedStatement
:
PreparedStatement stmtNavegar = con.prepareStatement("select * from aluno");
ResultSet rsNavegar = stmtNavegar.executeQuery();
2 curtidas
Com o Statement eu consigo, mas como costumo usar mais o prepareStatement queria de saber como fazer com ele também…
Qual a dificuldade que você está encontrando em usar o PreparedStatement
?
Pois nele você tem todos os métodos que precisa: first(), last(), next() e previous()
.
Também não entendi, explica melhor sua dificuldade.
Esses métodos são do ResultSet
.
Me expressei mal, eu quis dizer que ele consegue utilizar esses métodos do resultset usando tanto o Statement
como também o PreparedStatement
.
1 curtida