packagebr.com.caelum.jdbc.modelo;publicclassContato{/** * @return Returns the email. */publicStringgetEmail(){returnemail;}/** * @param email The email to set. */publicvoidsetEmail(Stringemail){this.email=email;}/** * @return Returns the endereco. */publicStringgetEndereco(){returnendereco;}/** * @param endereco The endereco to set. */publicvoidsetEndereco(Stringendereco){this.endereco=endereco;}/** * @return Returns the nome. */publicStringgetNome(){returnnome;}/** * @param nome The nome to set. */publicvoidsetNome(Stringnome){this.nome=nome;}/** * @return Returns the id. */publicLonggetId(){returnid;}/** * @param id The id to set. */publicvoidsetId(Longid){this.id=id;}privateStringnome;privateStringemail;privateStringendereco;privateLongid;}
ContatoDao:
packagebr.com.caelum.jdbc.dao;importbr.com.caelum.jdbc.*;importbr.com.caelum.jdbc.modelo.*;importjava.sql.*;importjava.util.ArrayList;importjava.util.List;publicclassContatoDAO{// a conexão com o banco de dadosprivateConnectionconnection;// construtor que recebe a conexãopublicContatoDAO(Connectioncon){this.connection=con;}publicContatoDAO()throwsSQLException{this.connection=ConnectionFactory.getConnection();}publicvoidadiciona(Contatocontato)throwsSQLException{// prepared statement para inserçãoPreparedStatementstmt=this.connection.prepareStatement("insert into contatos (nome,email,endereco) values (?, ?, ?)");// seta os valoresstmt.setString(1,contato.getNome());stmt.setString(2,contato.getEmail());stmt.setString(3,contato.getEndereco());// executastmt.execute();stmt.close();}publicList<Contato>getLista()throwsSQLException{PreparedStatementstmt=this.connection.prepareStatement("select * from contatos");ResultSetrs=stmt.executeQuery();List<Contato>list=newArrayList<Contato>();while(rs.next()){// criando o objeto Contato Contatocontato=newContato();contato.setId(rs.getLong("id"));contato.setNome(rs.getString("nome"));contato.setEmail(rs.getString("email"));contato.setEndereco(rs.getString("endereco"));// adicionando o objeto à listalist.add(contato);}rs.close();stmt.close();returnlist;}publicvoidaltera(Contatocontato)throwsSQLException{PreparedStatementstmt=connection.prepareStatement("update contatos set nome=?, email=?, endereco=? where id=?");stmt.setString(1,contato.getNome());stmt.setString(2,contato.getEmail());stmt.setString(3,contato.getEndereco());stmt.setLong(4,contato.getId());stmt.execute();stmt.close();}publicvoidremove(Contatocontato)throwsSQLException{PreparedStatementstmt=connection.prepareStatement("delete from contatos where id=?");stmt.setLong(1,contato.getId());stmt.execute();System.out.println("Contato "+contato.getId()+" removido");stmt.close();}publicContatoprocura(Longid)throwsSQLException{PreparedStatementstmt=connection.prepareStatement("select * from contatos where id=?");ResultSetrs=stmt.executeQuery();if(!rs.next())returnnull;Contatoc=newContato();c.setId(rs.getLong("id"));c.setNome(rs.getString("nome"));c.setEmail(rs.getString("email"));c.setEndereco(rs.getString("endereco"));rs.close();stmt.close();returnc;}}