Proljetne varijable puta s majčinom dušicom

1. Uvod

U ovom kratkom vodiču naučit ćemo kako koristiti Thymeleaf za stvaranje URL-ova pomoću varijabli Spring path.

Varijable puta koristimo kada želimo proslijediti vrijednost kao dio URL-a. U kontroleru Spring pristupamo tim vrijednostima pomoću @PathVariable bilješka.

2. Korištenje varijabli puta

Prvo, postavimo svoj primjer stvaranjem jednostavnog Artikal razred:

predmet javne klase {private int id; privatni naziv niza; // Konstruktor i standardni getteri i postavljači}

Idemo sada stvoriti naš kontroler:

@Controller javna klasa PathVariablesController {@GetMapping ("/ pathvars") javni niz niza (model modela) {Stavke popisa = novi ArrayList (); items.add (nova stavka (1, "Prva stavka")); items.add (nova stavka (2, "Druga stavka")); model.addAttribute ("predmeti", predmeti); return "pathvariables / index"; } @GetMapping ("/ pathvars / single / {id}") javni niz singlePathVariable (@PathVariable ("id") int id, Model modela) {if (id == 1) {model.addAttribute ("item", novo Stavka (1, "Prva stavka")); } else {model.addAttribute ("stavka", nova stavka (2, "druga stavka")); } return "pathvariables / view"; }}

U našem index.html predloška, ​​krenimo kroz naše stavke i stvorimo veze koje pozivaju singlePathVariable metoda:

Kôd koji smo upravo stvorili čini URL-ove poput ovog:

// localhost: 8080 / pathvars / single / 1

Ovo je standardna sintaksa Thymeleaf za upotrebu izraza u URL-ovima.

Također možemo koristiti spajanje kako bismo postigli isti rezultat:

3. Korištenje više varijabli puta

Sad kad smo pokrili osnove izrade URL-a varijable puta u Thymeleaf-u, hajde da brzo pokrijemo upotrebu višestrukih.

Prvo ćemo stvoriti Detalj klase i modificirati naš Artikal razreda da biste imali njihov popis:

detalj javne klase {private int id; opis privatnog niza; // konstruktor i standardni getteri i postavljači}

Dalje, dodajmo popis Detalj do Artikal:

detalji privatnog popisa;

Sada, ažurirajmo svoj kontroler kako bismo dodali metodu koja koristi višestruke @PathVariable napomene:

@GetMapping ("/ pathvars / item / {itemId} / detail / {dtlId}") javni niz multiplePathVariable (@PathVariable ("itemId") int itemId, @PathVariable ("dtlId") int dtlId, model modela) {for ( Stavka stavke: items) {if (item.getId () == itemId) {model.addAttribute ("item", item); for (Detail detail: item.getDetails ()) {if (detail.getId () == dtlId) {model.addAttribute ("detalj", detalj); }}}} return "pathvariables / view"; }

Napokon, izmijenimo naš index.html predložak za izradu URL-ova za svaki detaljni zapis:

4. Zaključak

U ovom smo brzom vodiču naučili kako koristiti Thymeleaf za stvaranje URL-ova s ​​varijablama puta. Počeli smo izradom jednostavnog URL-a sa samo jednim. Kasnije smo na našem primjeru proširili upotrebu više varijabli puta.

Primjer koda dostupan je na GitHubu.


$config[zx-auto] not found$config[zx-overlay] not found