Lekce 4
Repository použité při lekci
Postup stažení: nejprve si repository forkni z mého repository do svého (tlačítko Fork vpravo nahoře). Následně naklonuješ repository do svého počítače. Pokud máš v prohlížeči nainstalovaný doplněk JetBrains Toolbox, stačí na GitHubu kliknout na tlačítko Clone in IntelliJ IDEA a pokračovat dle pokynů.
Pokud doplněk nemáš, na úvodní obrazovce IntelliJ IDEA zvol tlačítko Get from VCS, následně v nabídce vlevo zvol GitHub a v přehledu projektů vyber projekt, který chceš klonovat.
Osnova
- seznamy
- předávání paramterů do controlleru
Tahák
Freemarker šablony
- Záhlaví souboru
[#ftl]
- Výpis dat z modelu
${…}
- Test, jestli hodnota v modelu existuje:
model??
,model.property??
a(model.property)??
- Podmínka
-
[#if condition] … [/#if]
-
[#if condition] … [#else] … [/#if]
-
[#if condition] … [#elseif condition] … [/#if]
-
[#if condition] … [#elseif condition] … [#else] … [/#if]
-
- Cyklus/sekvence
-
[#list sequence as item] … [/#list]
-
[#list sequence as item] … [#else] … [/#list]
-
[#list sequence] … [#items as item] … [/#items] … [#else] … [/#list]
item?index
item?counter
item?has_next
item?item_parity
-
- Vkládání komponent a jiných souborů
[#include 'cesta']
Spring
@Controller
– třída s metodami, které obsluhují požadavky klienta@RequestMapping
– může se použít na třídě controlleru pro označení prefixu cesty, který je společný pro všechny metody controlleru@SpringBootApplication
– označení výchozí třídy Spring Boot aplikace. Spring Boot následně prohledává package, ve kterém je umístěna tato třída, a všechny package pod ním (na libovolné úrovni zanoření) a zpracuje všechny třídy označené některou z anotací, které Spring zná – např.@Controller
,@Service
,@Repositoy
apod.@GetMapping
,@PostMapping
a další,@RequestMapping
– anotace označující celý kontroler nebo metodu a určující, jaké požadavky bude zpracovávat (např. cesta, metoda, typ dat požadavku nebo odpovědi)@PathVariable
– označuje parametr metody controlleru, který má být naplněn údajem z cestyModelAndView
– přepravka, která obsahuje název view a data modelu
Odkazy
- Java SE 17 Javadoc – dokumentace všech tříd, které jsou součástí základní Javy ve verzi 11.
- Dokumentace Spring Boot – odsud je anotace
@SpringBootApplication
a třídaSpringApplication
. - Dokumentace Spring Framework – odsud jsou anotace
@Controller
,@GetRequest
a třídaModelAndView
. - Dokumentace Freemarker – šablonovací systém pro HTML použitý v projektu.
- Bootstrap – nejprofláklejší CSS framework (knihovna CSS tříd pro stylování).
- Unsplash – obrázky a fotografie k použití zdarma
- LineAwesome – sada ikon pro použití na webu
Úkol
Zadání úkolu: Úkol 3