Aula 20 Flashcards
O que é um ControllerAdvice?
Para não ter que ficar repetindo código em vários Controllers diferentes, o ControllerAdvice faz o papel de um Controller global para tratar questões em comum com outros Controllers.
O que é o ResponseEntityExceptionHandler?
O Nome : Response Entity no Spring representa uma resposta HTTP. Exception é a exceção. E Handler é Tratador.
Então traduzindo o nome para o português de uma maneira concisa ficaria : Resposta HTTP de um tratamento de exceção.
Serve para tratar exceções globalmente e personalizar o retorno de erros no response body. Ela pode ser estendida em qualquer classe anotada com @ControllerAdvice.
O que é o @ResponseStatus?
É uma anotação a nível de classe que define, através de um enum chamado HttpStatus, qual será o status code mostrado no contexto dessa classe.
Qual a diferença entre retornar o ResponseEntity<Objeto> e o Objeto sozinho?</Objeto>
O ResponseEntity<Objeto> oferece várias formas de manipular a resposta HTTP, como alterar cabeçalhos e o status code. Enquanto o Objeto sozinho sempre retorna um status code 200 OK.</Objeto>
O que é uma URI?
Geralmente associada ao URL, a URI é a maneira que é identificado um recurso dentro de uma aplicação. Por mais que seja bastante associada à URLs, que é uma maneira de encontrar recursos por caminho (o próprio nome já diz, Uniform Resource Locator), a URI também pode ser do tipo URN (Uniform Resource Name), que identifica os recursos unicamente pelo nome, sem citar o caminho. Todos eles recebem ‘Uniform’ no nome, pois possuem uma padronização.
Como usar o @ExceptionHandler?
É usado a nível de método para especificar a exceção que ele está lidando. Recebe entre parênteses a exceção a ser tratada com um .class no final.
O que é a classe WebRequest?
Serve para pegar dados da request feita para poder manipulá-los.