|
|
|
# 📑 Padrões de Desenvolvimento – Backend
|
|
|
|
|
|
|
|
Esta página visa apresentar os padrões a serem utilizados no desenvolvimento de código do repositório do **Backend** da aplicação.
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## Swagger
|
|
|
|
|
|
|
|
Além de seguir os padrões determinados pela **arquitetura** e **estrutura de pastas** do projeto, é necessário **atualizar a estrutura do Swagger** conforme é realizado o desenvolvimento da aplicação.
|
|
|
|
|
|
|
|
As marcações do **Swagger** devem ser inseridas em:
|
|
|
|
- **Controllers**
|
|
|
|
- **Models**
|
|
|
|
- **DTOs**
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## 📌 DTOs
|
|
|
|
|
|
|
|
- Todos os **DTOs** devem ser criados na pasta `dto` do seu modulo.
|
|
|
|
- Para a criação dos DTOs usamos a anotação `@Valid` para validar o tipo de um atributo .
|
|
|
|
- Utilizar o **Bean Validation** do Spring para validação automática de atributos.
|
|
|
|
- As anotações de validação devem ser aplicadas **diretamente nos atributos** do DTO.
|
|
|
|
|
|
|
|
Exemplo:
|
|
|
|
|
|
|
|
```java
|
|
|
|
public class UsuarioDTO {
|
|
|
|
|
|
|
|
@NotBlank(message = "O nome é obrigatório")
|
|
|
|
private String nome;
|
|
|
|
|
|
|
|
@Email(message = "E-mail deve ser válido")
|
|
|
|
private String email;
|
|
|
|
|
|
|
|
@NotNull(message = "A idade é obrigatória")
|
|
|
|
@Min(value = 18, message = "Idade mínima é 18 anos")
|
|
|
|
private Integer idade;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Na Controller:
|
|
|
|
```java
|
|
|
|
@PostMapping
|
|
|
|
public ResponseEntity<UsuarioDTO> salvar(@RequestBody @Valid UsuarioDTO usuarioDTO) {
|
|
|
|
return ResponseEntity.ok(service.salvar(usuarioDTO));
|
|
|
|
} |
|
|
|
\ No newline at end of file |