Komplett guide til Spring Boot 4 · leksjon

Håndtering av HTTP-forespørsler og -svar

Lær å behandle forespørselsparametere, banevariabler og forespørselskropper, og utforme passende HTTP-svar.

Leksjon 2 av 411 trinn

Håndtering av HTTP-forespørsler og -svar er en gratis leksjon i Komplett guide til Spring Boot 4 på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Komplett guide til Spring Boot 4, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Komplett guide til Spring Boot 4 inneholder totalt 4 leksjoner.

Forespørsler og svar

Når du samhandler med en nettapplikasjon, sender nettleseren en HTTP-forespørsel til en server. Serveren behandler den og sender deretter tilbake et HTTP-svar.

I Spring Boot skriver vi kode som lytter etter disse forespørslene, henter ut informasjon, utfører handlinger og deretter utformer et passende svar.

Hente spørringsparametere: @RequestParam

Noen ganger sendes ekstra data i URL-en etter et ?, for eksempel /search?keyword=java. Dette kalles spørringsparametere.

Spring Boot bruker merknaden @RequestParam til enkelt å hente disse verdiene inn i metodeparameterne dine.

Direktedemo: @RequestParam

Prøv å kjøre dette eksempelet. Når appen har startet, åpner du nettleseren eller et verktøy som Postman og går til http://localhost:8080/hello?name=Coddy. Se hva som skjer!

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class Main {

  public static void main(String[] args) {
    SpringApplication.run(Main.class, args);
  }

  @GetMapping("/hello")
  public String sayHello(
      @RequestParam(defaultValue = "Guest") String name) {
    return "Hello, " + name + "!";
  }
}

Hente ut fra bane: @PathVariable

Andre ganger er viktige data en del av selve URL-banen, for eksempel /users/123. Her er 123 en ID.

Merknaden @PathVariable lar deg hente disse dynamiske delene fra URL-en direkte inn i metodeparameterne dine.

Direktedemo: @PathVariable

Kjør denne appen, og gå deretter til http://localhost:8080/items/apple eller http://localhost:8080/items/banana i nettleseren.

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class Main {

  public static void main(String[] args) {
    SpringApplication.run(Main.class, args);
  }

  @GetMapping("/items/{itemName}")
  public String getItemDetails(@PathVariable String itemName) {
    return "You requested item: " + itemName;
  }
}

Spørring eller bane: Når bør de brukes?

  • @RequestParam: Brukes til valgfri filtrering, sortering eller paginering (for eksempel /products?category=books&page=1).
  • @PathVariable: Brukes til å identifisere en bestemt ressurs (for eksempel /users/{id} eller /products/{sku}). Den er avgjørende for ressursens identitet.

Håndtere datanyttelaster: @RequestBody

Ved operasjoner som oppretter eller oppdaterer ressurser (POST- og PUT-forespørsler) sender klienter ofte komplekse data (for eksempel JSON eller XML) i request body.

Merknaden @RequestBody konverterer automatisk innholdet i denne kroppen til et Java-objekt for deg, takket være Springs innebygde meldingskonverterere.

Direktedemo: @RequestBody

Kjør dette. Bruk et verktøy som Postman til å sende en POST-forespørsel til http://localhost:8080/users med en JSON-kropp:

{"id":1, "name":"Coddy"}

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class Main {

  public static void main(String[] args) {
    SpringApplication.run(Main.class, args);
  }

  // Define a simple User class
  public static class User {
    private Long id;
    private String name;

    // Getters and setters for JSON mapping
    public Long getId() { return id; }
    public void setId(Long id) { this.id = id; }
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
  }

  @PostMapping("/users")
  public String createUser(@RequestBody User user) {
    return "User created: ID=" + user.getId() +
           ", Name=" + user.getName();
  }
}

Tilpassede svar: ResponseEntity

Som standard returnerer Spring ofte en String eller et Java-objekt, som Spring konverterer til JSON/XML med statusen 200 OK.

Hvis du trenger mer kontroll, særlig over HTTP-statuskoder (som 201 Created og 404 Not Found), bruker du ResponseEntity. Den lar deg angi kropp, status og headere eksplisitt.

Kort sjekk: Håndtering av forespørsler

Tenk på et Spring Boot REST-endepunkt som er laget for å hente en bruker ved hjelp av den unike ID-en, for eksempel /api/users/5. Hvilken merknad egner seg best til å hente ut 5 fra URL-en?

Leksjonsoppsummering

Vi har gått gjennom hvordan Spring Boot gjør det enkelt å håndtere HTTP-forespørsler:

  • @RequestParam for spørringsparametere (valgfrie data).
  • @PathVariable for banevariabler (ressursidentifikatorer).
  • @RequestBody for å deserialisere innholdet i request body til Java-objekter.
  • ResponseEntity for detaljert kontroll over HTTP-svar, inkludert statuskoder.

Å beherske disse merknadene er avgjørende for å bygge robuste RESTful API-er!

Gratis å komme i gang

Lær deg Java med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
21
Leksjoner
84

Ofte stilte spørsmål

Er leksjonen «Håndtering av HTTP-forespørsler og -svar» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Komplett guide til Spring Boot 4, inkludert «Håndtering av HTTP-forespørsler og -svar», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Komplett guide til Spring Boot 4 inneholder totalt 4 leksjoner.

Hva lærer jeg i «Håndtering av HTTP-forespørsler og -svar»?

Lær å behandle forespørselsparametere, banevariabler og forespørselskropper, og utforme passende HTTP-svar. Du øver på Komplett guide til Spring Boot 4 med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Komplett guide til Spring Boot 4?

Ingen tidligere erfaring er nødvendig. Komplett guide til Spring Boot 4 på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.

Hvor lang tid tar leksjonen «Håndtering av HTTP-forespørsler og -svar»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Komplett guide til Spring Boot 4-leksjonen?

Ja. Alle Komplett guide til Spring Boot 4-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Opprette REST-kontrollere
  2. Håndtering av HTTP-forespørsler og -svar
  3. Validering av inndata og feilhåndtering
  4. Dokumenter REST-API-er med OpenAPI og Swagger
← Tilbake til Komplett guide til Spring Boot 4