@Override
  /* LISTAGEM */
  public List<Fabricante> listAll() {
    Connection conn;
    List<Fabricante> fabricante = new ArrayList<>();
    try {
      conn = ConnectionFactory.getConnection();
      PreparedStatement pstm = conn.prepareStatement(LIST);
      ResultSet rs = pstm.executeQuery();
      while (rs.next()) {
        Fabricante f = new Fabricante();
        f.setCod(rs.getInt("cod_fabricante"));
        f.setNmFantasia(rs.getString("nmfantasia"));
        f.setCnpj(rs.getString("cnpj"));
        f.setTelefone(rs.getString("telefone"));
        f.setEmail(rs.getString("email"));
        f.setEndereco(rs.getString("endereco"));
        fabricante.add(f);
      }
      ConnectionFactory.closeConnection(conn, pstm);

    } catch (Exception e) {
      JOptionPane.showMessageDialog(null, "Não foi possível efetuar a transação");
    }
    return fabricante;
  }
  @Override
  /* LISTAGEM POR ID */
  public Fabricante listById(int codFabricante) {
    Connection conn;
    try {
      conn = ConnectionFactory.getConnection();
      PreparedStatement pstm = conn.prepareStatement(LISTBYID);
      pstm.setInt(1, codFabricante);
      ResultSet rs = pstm.executeQuery();
      while (rs.next()) {
        Fabricante f = new Fabricante();
        f.setCod(rs.getInt("cod_fabricante"));
        f.setNmFantasia(rs.getString("nmfantasia"));
        f.setCnpj(rs.getString("cnpj"));
        f.setTelefone(rs.getString("telefone"));
        f.setEmail(rs.getString("email"));
        f.setEndereco(rs.getString("endereco"));
        return f;
      }
      ConnectionFactory.closeConnection(conn, pstm);

    } catch (Exception e) {
      JOptionPane.showMessageDialog(null, "Não foi possível efetuar a transação");
    }
    return null;
  }
 @Override
 /* ALTERAÇÃO */
 public boolean update(Fabricante fab) {
   Connection conn;
   try {
     conn = ConnectionFactory.getConnection();
     PreparedStatement pstm = conn.prepareStatement(UPDATE);
     pstm.setString(1, fab.getNmFantasia());
     pstm.setString(2, fab.getCnpj());
     pstm.setString(3, fab.getTelefone());
     pstm.setString(4, fab.getEmail());
     pstm.setString(5, fab.getEndereco());
     pstm.setInt(6, fab.getCod());
     pstm.execute();
     JOptionPane.showMessageDialog(null, "Transação efetuada com sucesso");
     ConnectionFactory.closeConnection(conn, pstm);
     return true;
   } catch (Exception e) {
     JOptionPane.showMessageDialog(null, "Não foi possível efetuar a transação" + e.getMessage());
     return false;
   }
 }