...
Code Block | ||||
---|---|---|---|---|
| ||||
@Controller @RequestMapping( "/custom" ) public class CustomController { @Autowired private PositionService ps; @RequestMapping( "positions" ) public @ResponseBody List<User> getPositions( @RequestParam String positionName ) { return ps.getByName(positionName); } } |
Po pierwsze dodajemy adnotację @Controller dzięki temu system widzi klasę jako serwlet. Ścieżka do serwletu oznaczonego adnotacją @Controller zaczyna się od /api/. Adnotacja @RequestMapping pozwala na zdefiniowanie ścieżki do serwletu. Jak widzimy w przykładzie mamy dwie takie adnotacje, które wraz z przedrostkiem /api/ tworzą ścieżkę do serwletu. Dla naszego przykładu ścieżka będzie następująca: /api/custom/positions. Dzięki oznaczeniu @ResponseBody odpowiedź serwletu jest automatycznie konwertowana do formatu JSON. Ostatnia adnotacja @RequestParam pozwala na odczytanie parametru przekazanego przez serwlet. Parametr może być również obiektem zakodowanym w JSON, wtedy system automatycznie go zdekoduje.