@Override
    public List<Fornecedor> ListByNome(String nome) {
        Connection conn = null;
        PreparedStatement pstm = null;
        ResultSet rs = null;
        List<Fornecedor> fornecedores = new ArrayList<>();
        try{
            conn = ConnectionFactory.getConnection();
            pstm = conn.prepareStatement(LISTBYNOME);
            pstm.setString(1,"%" + nome + "%");
            rs = pstm.executeQuery();
            while(rs.next()){
                Fornecedor f = new Fornecedor();
                f.setNome(rs.getString("nome_fn"));
                f.setTelefone(rs.getString("telefone_fn"));
                f.setEndereco(rs.getString("endereco_fn"));
                fornecedores.add(f);
            }
        }catch(Exception e){
            JOptionPane.showMessageDialog(null,"Erro ao listar autor por nome " + e);
        }finally{
            try{
                ConnectionFactory.closeConnection(conn, pstm, rs);
            }catch(Exception e){
                JOptionPane.showMessageDialog(null,"Erro ao desconectar com o banco " + e);
            }
        }
        return fornecedores;
    }