Wpis z mikrobloga

Hej, szybkie pytanie dotyczace #java #spring #springboot

Zakladamy, ze pisze sobie strone, ktora sklada sie z trzech sekcji :
- navbar
- content
- footer

Tworze wiec jakis template thymeleaf, ktory sobie ladnie includuje poszczegolne czesci. Potem kodze Controller od strony dajmy na to /home. Wypelniam sobie model potrzebnymi atrybutami dla navbara, contentu i footera. Wszystko super.

Ale czy musze w kazdym controllerze, do kazdej pojedynczej strony zamieszczac kod, ktory wypelnia caly model? Jest jakas mozliwosc zmuszenia np. zeby header korzystal z jakiegos swojego controllera?

Zaznaczam, ze w springu jestem totalna swiezynka, wczesniej kodzilem w angularjs.

Oczywiscie wiem ze moge zrobic sobie hierarchie controllerow ale moze jest jakies inne rozwiazanie, zeby 'rozdzielic' te komponenty.

#programowanie
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Zaznaczam, ze w springu jestem totalna swiezynka, wczesniej kodzilem w angularjs.


@Kuriozal:
jeżeli znasz JS to wystaw sobie po prostu REST servicy ze spring controllerów i koduj w angularze.
jeżeli już masz doświadczenie w angularze, bawienie się w javowy frontend troche mija się z celem.

uzywasz mavena?
  • Odpowiedz
@lerner: Uzywam gradle.

Tak tak, wiem, ze moge wystawic API ale wlasnie chcialem tego uniknac zeby nauczyc sie kodzic strony w natywnym rozwiazaniu springowym ;>

No ale pewnie na tym sie konczy :P
  • Odpowiedz
Tak tak, wiem, ze moge wystawic API ale wlasnie chcialem tego uniknac zeby nauczyc sie kodzic strony w natywnym rozwiazaniu springowym ;>


@Kuriozal: czy jest w tym sens tak na dobrą sprawę? jedyne co widzę to właśnie takie coś spring w backendzie i angular/extjs/react na froncie, czysto javowych rozwiązań praktycznie nie widuje
  • Odpowiedz
@lerner: Z tego co widze Spring boot z automatu tak robi

@RequestMapping(value = "/test", method = RequestMethod.GET, produces = "application/json")
public User getTest() {
return new
  • Odpowiedz
Jakby ktoś mimo wszystko chciał odpowiedzieć jak to wygląda w Springu (bez dziedziczenia kontrolerów), to chętnie poczytam (nie programuję w Javie).
  • Odpowiedz
@Kuriozal: ja po prostu zrobiłem klasy do tego zadania i wywołuje w każdym kontrolerze te klasy. Może można to ewentualnie zrobić przy pomocy controller advice
  • Odpowiedz
@Kuriozal Masz jeden jsp, który jest szablonem (i zawiera navbar, content i footer). Navbar i footer to osobne JSPy które inkludujesz do szablonu. Wołają swoje kontrolery po ajaxie i jsonem przesyłasz dane. Najlepiej jakbyś sobie zrobił beany sesyjne do navbara i footera. Kontent idzie po zwykłym kontrolerze. Co do technologii to mireczki już tu zapodały Jacksona.
  • Odpowiedz