Retornar Boolean de métodos DAO

Fala pessoal, como vão?

Programo a um tempo e sempre retorno boolean de métodos que realizam acesso a dados, por exemplo, tenho um método que realiza um insert em determinada tabela no banco de dados, eu verifico se a query foi executada com sucesso e retorno um boolean conforme o resultado, mas isso foi uma iniciativa minha, não que alguém tenha me falado que tem ou não que ser feito.
Eu gostaria de saber como vocês fazem e o que consideram uma boa prática em relação a isso.

Operações básicas como insert, update e delete.

Links para outros posts com o assunto também ajudam!

Eu não gosto dessa abordagem.

Se eu uso um DAO, eu quero que ele execute tudo o que eu pedi. Peço pra deletar um item: deve ser apagado.

Se vc retorna false, o que aconteceu?

O item não existe? Erro de constraint? Não conectou? Timeout? Eu preciso saber.

Não deletar é uma exceção.

Tem duas abordagens:

  • lançar exceptions
  • retornar um objeto Response que diz se foi sucesso e qual o erro (se aconteceu)

Perceba que exception vc pode criar as suas diferentes, e tratar com vários catch-es se necessário. erro de conexão talvez requer reconnectar e tentar de novo. Erro de usuário não existe é diferente.

Pense nisso.

1 curtida