Spring, zmienne w @RequestMapping

Spring, zmienne w @RequestMapping
  • Rejestracja: dni
  • Ostatnio: dni
0

Cześć,
Uczę się springa z różnych poradników, i naszło mnie pewne pytanie na którego nie mogę znaleźć odpowiedzi.
Otóż napisałem sobie taki kontroler :

Kopiuj
@GetMapping("/hello/{who}")
    public String sayHello(@PathVariable String who){
        if(who.equals("mother"))
            return "Mother say hello!";
        else if(who.equals("brother"))
            return "Brother say Hello!";
        else
            return "Someone say hello !";
    }

No i wszystko rozumiem, mapuje sobie ścieżke ze zmienną, tą zmienna wstrzykuje jako argument.. i teraz moje pytanie - Co dalej?
mam te zmienne w mojej metodze i co w związku z tym? Czy w tej metodzie powinienem napisać kod dla każdej możliwości? Nigdy nie widziałem praktycznego użycia tego dalej, i zastanawia mnie jak to powinno poprawnie wyglądać, a nie wydaje mi się żeby robiło się to w ten sposób co sobie napisałem :D

Pieter24
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 90
0

To zależy kogo zapytasz :p Teoretycznie we wzorcu MVC masz wszystko w kontrolerze robic ale to tylko teoretycznie. Praktycznie fajnie byłoby jakbyś zrobił sobie jakis serwis, który to zajmie sie logiką i zwrócić Ci z powrotem do kontrolera wyniki tej operacji. Czyli w kontrolerze wywołujesz jakaś metodę utworzonego serwisu, do ktorej przekazujesz Twoj argument who i odbierasz wyniki tej metody i tyle. Kontrolery powinny być jak najprostsze i mieć minimum logiki

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Teoretycznie we wzorcu MVC masz wszystko w kontrolerze robic ale to tylko teoretycznie.

Matka wie ze ćpiesz?

Zarówno teoretycznie jak i praktycznie we wzorcu MVC to w M ma sie znajdować logika, a nie w C. Tak zresztą jak napisałeś dalej -> z kontrolera wołasz tylko jakiś serwis w warstwie logiki a potem wynik wysyłasz do użytkownika.

@Pijany Kret

Kopiuj
@GetMapping("/hello/{who}")
    public String sayHello(@PathVariable String who){
        HelloResult someResult = helloService.handle(who);
        return something;
    }

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.