Sobes.tech
Junior
97
questionbank

Как создать контроллер в Spring?

Answer from AI

sobes.tech AI

  1. Создать класс и пометить его аннотацией @Controller (для MVC) или @RestController (для REST).
  2. Внутри класса определить методы для обработки HTTP запросов.
  3. Пометить эти методы аннотациями маппинга, например @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @RequestMapping, указав пути доступа.
  4. Внутри методов написать логику обработки запроса и возвращения ответа.

Пример с @RestController:

// Используется для создания RESTful веб-сервисов.
// Включает @Controller и @ResponseBody.
@RestController
@RequestMapping("/users") // Base path for all endpoints in this controller
public class UserController {

    // Метод для обработки GET запросов на /users.
    @GetMapping
    public List<User> getAllUsers() {
        // Логика получения всех пользователей
        return // список пользователей;
    }

    // Метод для обработки GET запросов на /users/{id}.
    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        // Логика получения пользователя по id
        return // пользователь;
    }

    // Метод для обработки POST запросов на /users.
    @PostMapping
    public ResponseEntity<User> createUser(@RequestBody User user) {
        // Логика создания нового пользователя
        User createdUser = // созданный пользователь;
        // Возвращаем статус 201 Created
        return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);
    }
}