Sobes.tech
Junior

Como criar um controlador no Spring?

sobes.tech IA

Resposta da IA

  1. Criar uma classe e marcá-la com a anotação @Controller (para MVC) ou @RestController (para REST).
  2. Dentro da classe, definir métodos para lidar com requisições HTTP.
  3. Marcar esses métodos com anotações de mapeamento, por exemplo, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @RequestMapping, indicando os caminhos de acesso.
  4. Dentro dos métodos, escrever a lógica para processar a requisição e retornar a resposta.

Exemplo com @RestController:

// Usado para criar serviços web RESTful.
// Inclui @Controller e @ResponseBody.
@RestController
@RequestMapping("/users") // Caminho base para todos os endpoints neste controlador
public class UserController {

    // Método para lidar com requisições GET em /users.
    @GetMapping
    public List<User> getAllUsers() {
        // Lógica para obter todos os usuários
        return // lista de usuários;
    }

    // Método para lidar com requisições GET em /users/{id}.
    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        // Lógica para obter um usuário por id
        return // usuário;
    }

    // Método para lidar com requisições POST em /users.
    @PostMapping
    public ResponseEntity<User> createUser(@RequestBody User user) {
        // Lógica para criar um novo usuário
        User createdUser = // usuário criado;
        // Retorna o status 201 Created
        return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);
    }
}