Classe Contato

4 respostas
Ramiroinjar

Boa tarde galera....

Vamos ao meu problema...

Andei seguindo um video tutorial no youtube para criar uma agenda... até um certo ponto blz.... mais na classe Contato ... onde as as funções... fazer buscar, remoção e alteração de contato... a função Busca esta dando um erro desconhecido por mim, eu não consigo ver aonde errei... esta tudo como mostra no video....
O codigo esta abaixo

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ramiro.dao;

import java.awt.List;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import ramiro.bancodados.CriaConexao;
import ramiro.logica.Contato;

/**
 *
 * @author Ramiro Ramos
 */
public class ContatoDao {

    private Connection conexao;

    public ContatoDao() throws SQLException {
        this.conexao = CriaConexao.getConexao();
    }

    
    //adicionar contato
    public void adiciona(Contato c1) throws SQLException{

        String sql = "INSERT into contato (nome, endereco, telefone, email, sexo)"
                + "VALUES (?,?,?,?,?)";

        //prepara a conexão
        PreparedStatement stmt = conexao.prepareStatement(sql);

        //seta os valores
        stmt.setString(1, c1.getNome());
        stmt.setString(2, c1.getEndereco());
        stmt.setString(3, c1.getTel());
        stmt.setString(4, c1.getEmail());
        stmt.setString(5, c1.getSexo());
        
        //executa o código sql
        stmt.execute();
        stmt.close();

    

    }
//fazer busca
        
    /**
     *
     * @return
     * @throws SQLException
     */
   
    
     public List<Contato> getLista() throws SQLException{
        String sql = "select * from contato";
        PreparedStatement stmt = this.conexao.prepareStatement(sql);
        ResultSet rs = stmt.executeQuery();

        List<Contato> minhaLista = new ArrayList<Contato>();



while(rs.next()){
    Contato c1 = new Contato();
    c1.setNome(rs.getString("nome"));
     c1.setEndereco(rs.getString("endereco"));
      c1.setTel(rs.getString("telefone"));
       c1.setEmail(rs.getString("email"));
        c1.setSexo(rs.getString("sexo"));
        minhaLista.add(c1);
}

rs.close();
stmt.close();
return minhaLista; 
  
    
    }


    //alteração 
    
    public void altera(Contato c1) throws SQLException{
    
        String sql = "update contato set nome=?, endereco=?, telefone=?, email=?, sexo=? where id=?";
        
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        
         //seta os valores
        stmt.setString(1, c1.getNome());
        stmt.setString(2, c1.getEndereco());
        stmt.setString(3, c1.getTel());
        stmt.setString(4, c1.getEmail());
        stmt.setString(5, c1.getSexo());
        stmt.setLong(6,c1.getId());
        
        //executa o código sql
        stmt.execute();
        stmt.close();
        
    
    
    }
    
    
    // remover contato
    
    
    public void remove (Contato c1) throws SQLException{
    
    String sql = "delete from contato where id=?";
    
    PreparedStatement stmt = conexao.prepareStatement(sql);
    stmt.setLong(1, c1.getId());
    stmt.execute();
    stmt.close();
    
    
    
    
    
    }
    
    
    
}

Há galera.. e ja adiantando sou iniciante no java...

Erro linha 63 type list does not take parameters
Erro linha 68 type list does not take parameters

esses são os erros...
desde já agradeço a atenção
VLW

4 Respostas

RicardoFranca

Fala Ramiro, blzz?
Tenta usar…

import java.util.List;

No lugar de

import java.awt.List;

… pra ver se funfa. :wink:

Ramiroinjar

Vlw meu brother… era isso mesmo… já tinha resolvido… até ia colocar como resolvido… aqui…
brigadão em brother…

RicardoFranca

hehe
Tranquilo, se precisar, “estamos ai”. :wink:

freakazoid

Notei que vc não esta fechando a conexão, e com certeza terá problemas com o pool de conexões do seu banco de dados.

Sugestão: adicione um bloco finally, e feche o PreparedSatatement, ResultSet e a conexão.

finally{
	
	
	if(rs != null) rs.close();  
	if(stmt != null)stmt.close();
	conexao.close();
}

return minhaLista;

Abs!

Criado 26 de julho de 2013
Ultima resposta 28 de jul. de 2013
Respostas 4
Participantes 3