Spring Rest Controller vs zwykły

0

Cześć,
Napisałem aplikację Springową - prosta biblioteka. Kontrolery wyglądają u mnie tak, że jak user wbije na jakiś url np /library/book to kontroler wywołuje serwis który to wywołuje repository, coś tam jest robione na bazie i następnie kontroler zwraca String np "bookPage" który jest nazwą template thymeleaf. No i wszystko fajnie działa, cały ten serwis funkcjonuje, można się logować rejestrować ksiązki wyporzyczać.. ale teraz mnie zastanawia jedna sprawa, otóż wszędzie w necie pojawia się info o "Rest Controller", i teraz zastanawia mnie, "Rest Controller? a komu to potrzebne, a dlaczego?".
No bo po co moje metody w kontrolerze mają zwracać coś konkretnego innego niż nazwy template? Jak w ogóle miałbym to obsłużyc, pokazać userowi na stronie czy cuś? Nie rozumiem ideii tego, po co moje metody w kontrolerze mają zwracać coś konkretnego innego niż nazwe template?

1

Słowo klucz: Backend-as-a-service ;)
Generalnie zwracanie z backendu danych (np. jako JSONa) zamiast renderowania od razu strony z wynikami pozwala na postawienie wielu frontendów dla jednego backendu. Możesz mieć np. aplikacje mobilną oraz webową oraz desktopową które korzystają z tego samego backendu! Masz też w zasadzie niezależne od siebie backendowe serwisy oraz frontend, co ułatawia pracę z mikroserwisami.

0

Oj to wieele wyjaśnia, dzięki wielkie @Shalom.
Raz na praktykach kazali mi napisać kilka restowych metod dodajacych/usuwajacych coś z bazy, i te metody miały zwracać konkretnie obiekt tego elementu, a w przypadku usuwania booleana czy udało się usunąć. Czyli to dlatego że gdzieś tam będzie do tego napisany front który obsłuzy ten zwracany obiekt tak? A ja się własnie zastanawiałem dlaczego w apce mam dostęp tylko do backendu i co się dzieje z tym obiektem zwracanym dalej i jak oni to ogarną z frontendem :P

0

Czyli to dlatego że gdzieś tam będzie do tego napisany front który obsłuzy ten zwracany obiekt tak?

Tak, jakiś frontendowiec napisze w zasadzie osobną aplikację, która będzie korzystać z tego RESTowego backendu

1 użytkowników online, w tym zalogowanych: 0, gości: 1