Technologieaustausch

Allgemeine Anmerkungen zu SpringBoot

2024-07-12

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

@RestController

Es ist die Kopplung von @ResponseBody und @Controller,

@Controller gibt an, dass die Klasse ein Controller ist, und @ResponseBody gibt an, dass das von der Methode des Controllers zurückgegebene Objekt direkt als Hauptteil der HTTP-Antwort und nicht als Ansicht verwendet wird.

In Parameterlisten geschriebene Kommentare

@PfadVariable

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

  • Wird zum Extrahieren von Variablen aus URL-Vorlagen verwendet.
  • Wenn Sie eine RESTful-API definieren, können Sie damit in der URL definierte Pfadparameter erfassen.
  • Zum Beispiel, wenn Sie ein URL-Muster haben/users/{userId}, und die angeforderte URL ist/users/123,Also123kann verwendet werden alsuserIdParameter, die an Controller-Methoden übergeben werden.
  • normalerweise mit@RequestMappingoder@GetMapping@PostMappingVerwenden Sie es zusammen mit anderen Anmerkungen.
  1. @GetMapping("/users/{userId}")
  2. public User getUserById(@PathVariable("userId") int userId) { // 根据userId获取用户信息 }

@AnforderungParam

  • Wird verwendet, um Werte aus den Abfrageparametern der Anfrage zu extrahieren.
  • Damit können Sie auf den Abfragezeichenfolgenteil der URL zugreifen, z. B.?name=value
  • Kann auch verwendet werden, wenn in der Anfrage keine Parameter angegeben sindrequired=falseDie Eigenschaft ist auf optional oder von festgelegtdefaultValueDie Eigenschaft stellt einen Standardwert bereit.
  • normalerweise mit@RequestMappingoder@GetMapping@PostMappingVerwenden Sie es zusammen mit anderen Anmerkungen.
  1. @GetMapping("/search")
  2. public List<User> searchUsers(@RequestParam(value = "name", required = false) String name) { // 根据提供的name参数搜索用户 }

@Anforderungstext

  • @RequestBodyErmöglicht Ihnen, den vom Client gesendeten Anforderungstext (JSON, XML usw.) automatisch zu konvertieren (über einen geeigneten Konverter wie Jackson oder JAXB) und ihn an ein Objekt zu binden.
  • beim Benutzen@RequestBody Wenn , wird erwartet, dass die vom Client gesendete Anfrage einen nicht leeren Anfragetext hat. Wenn der Anforderungstext leer ist, löst Spring eine Ausnahme aus.
  • Wird verwendet, um den Hauptteil der HTTP-Anfrage den Parametern der Controller-Methode zuzuordnen.
  • Wird hauptsächlich für Anfragen wie POST, PUT und PATCH verwendet, bei denen der Client normalerweise Daten übermitteln muss, um Ressourcen zu erstellen oder zu aktualisieren
  1. @PostMapping("/users")
  2. public ResponseEntity<?> addUser(@RequestBody User user) {
  3. // 将接收到的User对象保存到数据库
  4. userService.addUser(user);
  5. return ResponseEntity.ok().build();
  6. }