Na początek tworzymy kontroler wyświetlający tylko tekst.
package topic; @RestController public class TopicController{ @RequestMapping("/topics") public String getAllTopics(){ return "All Topics"; }
Teraz tworzymy klasę “Topic” będącą dostępną w trakcie działania Naszej aplikacji. A w niej: konstruktor domyślny oraz z parametrami, gettery i settery.
public class Topic { private String id, name, description; public Topic() { } public Topic(String id, String name, String description) { this.id = id; this.name = name; this.description = description; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } }
I finalnie, zastępujemy z początkowego kodu napis poprzez listę utworzonych przez Nas obiektów typu “Topic”.
@RestController public class TopicController { @RequestMapping("/topics") public List<Topic> getAllTopics() { //działa z JSON, automatycznie konwertuje //return "All Topics"; return Arrays.asList( new Topic("spring", "spring framework", "spring framework description"), new Topic("java", "java framework", "java framework description"), new Topic("javascript", "javascript framework", "javascript framework description") ); } }
Domyślnie do sprawdzenia w przeglądarce pod adresem “localhost:8080/topics”.