Обмен технологиями

Общие аннотации SpringBoot

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

@RestController

Это сочетание @ResponseBody и @Controller,

@Controller указывает, что класс является контроллером, а @ResponseBody указывает, что объект, возвращаемый методом контроллера, напрямую используется как тело ответа HTTP, а не как представление.

Комментарии, записанные в списках параметров

@ПутьПеременной

@GetMapping("/users/{userId}")

  • Используется для извлечения переменных из шаблонов URL.
  • Когда вы определяете RESTful API, вы можете использовать его для захвата параметров пути, определенных в URL-адресе.
  • Например, если у вас есть шаблон URL-адреса/users/{userId}, а запрошенный URL-адрес/users/123,Так123может использоваться какuserIdПараметры, передаваемые методам контроллера.
  • обычно с@RequestMappingили@GetMapping@PostMappingИспользуйте его вместе с другими аннотациями.
  1. @GetMapping("/users/{userId}")
  2. public User getUserById(@PathVariable("userId") int userId) { // 根据userId获取用户信息 }

@RequestParam

  • Используется для извлечения значений из параметров запроса запроса.
  • Это позволяет вам получить доступ к части строки запроса URL-адреса, например.?name=value
  • Можно использовать, даже если в запросе не указаны параметры.required=falseСвойство установлено как необязательное илиdefaultValueСвойство предоставляет значение по умолчанию.
  • обычно с@RequestMappingили@GetMapping@PostMappingИспользуйте его вместе с другими аннотациями.
  1. @GetMapping("/search")
  2. public List<User> searchUsers(@RequestParam(value = "name", required = false) String name) { // 根据提供的name参数搜索用户 }

@RequestBody

  • @RequestBodyПозволяет автоматически конвертировать тело запроса (JSON, XML и т. д.), отправленное клиентом (через соответствующий преобразователь, например Jackson или JAXB), и привязывать его к объекту.
  • когда используешь@RequestBody Когда ожидается, что запрос, отправленный клиентом, будет иметь непустое тело запроса. Если тело запроса пусто, Spring выдаст исключение.
  • Используется для сопоставления тела HTTP-запроса с параметрами метода контроллера.
  • В основном используется для таких запросов, как POST, PUT и PATCH, которые обычно требуют от клиента отправки данных для создания или обновления ресурсов.
  1. @PostMapping("/users")
  2. public ResponseEntity<?> addUser(@RequestBody User user) {
  3. // 将接收到的User对象保存到数据库
  4. userService.addUser(user);
  5. return ResponseEntity.ok().build();
  6. }