public Favorecido update(Favorecido favorecido) throws Exception {
   String sql =
       "UPDATE favorecido "
           + "SET tipo = :tipo, idColaborador = :idColaborador, idFornecedor = :idFornecedor, idCliente = :idCliente, nome = :nome "
           + "WHERE idFavorecido = :idFavorecido ";
   Map<String, Object> params = new HashMap<String, Object>();
   params.put("idFavorecido", favorecido.getIdFavorecido());
   params.put("tipo", favorecido.getTipo().ordinal());
   params.put(
       "idColaborador",
       (favorecido.getColaborador() == null
           ? null
           : favorecido.getColaborador().getIdColaborador()));
   params.put(
       "idFornecedor",
       (favorecido.getFornecedor() == null ? null : favorecido.getFornecedor().getIdFornecedor()));
   params.put(
       "idCliente",
       (favorecido.getCliente() == null ? null : favorecido.getCliente().getCodigo()));
   params.put("nome", favorecido.getNome());
   update(sql, params, favorecidoHandler);
   return favorecido;
 }
 public Favorecido save(Favorecido favorecido) throws Exception {
   String sql =
       "INSERT INTO favorecido (tipo, idColaborador, idFornecedor, idCliente, nome) "
           + "VALUES(:tipo, :idColaborador, :idFornecedor, :idCliente, :nome)";
   Map<String, Object> params = new HashMap<String, Object>();
   params.put("tipo", favorecido.getTipo().ordinal());
   params.put(
       "idColaborador",
       (favorecido.getColaborador() == null
           ? null
           : favorecido.getColaborador().getIdColaborador()));
   params.put(
       "idFornecedor",
       (favorecido.getFornecedor() == null ? null : favorecido.getFornecedor().getIdFornecedor()));
   params.put(
       "idCliente",
       (favorecido.getCliente() == null ? null : favorecido.getCliente().getCodigo()));
   params.put("nome", favorecido.getNome());
   Integer idFavorecido = save(sql, params, favorecidoHandler);
   return find(idFavorecido);
 }