public Boolean atualizarPorTodosOsDados(Cidadao cidadao) {
        Boolean sucesso = false;
        Connection connection = conexao.getConnection();
        try {
            String valorDoComandoUm = comandos.get("atualizarPorTodosOsDados" + 1);
            String valorDoComandoDois = comandos.get("atualizarPorTodosOsDados" + 2);
            StringBuilder query = new StringBuilder(valorDoComandoUm);
            for (int i = 0; i < cidadao.getTelefones().size() + cidadao.getCelulares().size(); i++) {
                query.append("\n").append(valorDoComandoDois);
            }
            connection.setAutoCommit(false);
            PreparedStatement preparedStatement = connection.prepareStatement(query.toString());
            query.delete(0, query.length());
            int indice = 1;

            setInt(indice++, cidadao.getCodigo(), preparedStatement);
            setString(indice++, cidadao.getNomeCompleto(), preparedStatement);
            setString(indice++, cidadao.getLogradouro(), preparedStatement);
            setInt(indice++, cidadao.getNumeroImovel(), preparedStatement);
            setInt(indice++, cidadao.getBairro().getCodigo(), preparedStatement);
            setString(indice++, cidadao.getBairro().getNome(), preparedStatement);
            setInt(indice++, cidadao.getBairro().getCidade().getCodigo(), preparedStatement);
            setString(indice++, cidadao.getBairro().getCidade().getNome(), preparedStatement);
            setInt(indice++, cidadao.getBairro().getCidade().getEstado().getCodigo(), preparedStatement);
            for (Telefone telefone : cidadao.getTelefones()) {
                setInt(indice++, telefone.getCodigo(), preparedStatement);
                setInt(indice++, telefone.getCidadao().getCodigo(), preparedStatement);
                setInt(indice++, telefone.getDDD().getNumero(), preparedStatement);
                setString(indice++, telefone.getNumero(), preparedStatement);
                setString(indice++, "Tel", preparedStatement);
            }
            for (Celular celular : cidadao.getCelulares()) {
                setInt(indice++, celular.getCodigo(), preparedStatement);
                setInt(indice++, celular.getCidadao().getCodigo(), preparedStatement);
                setInt(indice++, celular.getDDD().getNumero(), preparedStatement);
                setString(indice++, celular.getNumero(), preparedStatement);
                setString(indice++, "Cel", preparedStatement);
            }

            preparedStatement.execute();
            connection.commit();
            connection.setAutoCommit(true);
            sucesso = true;
        } catch (SQLException ex) {
            try {
                connection.rollback();
            } catch (SQLException ex1) {
            }
            throw new RuntimeException(ex.getMessage());
        } catch (NullPointerException ex) {
            throw new RuntimeException(ex.getMessage());
        } catch (Exception ex) {
            throw new RuntimeException(ex.getMessage());
        } finally {
            conexao.fecharConnection();
        }
        return sucesso;
    }