Implementacja aktualizacji i usuwania.
Najpierw aktualizacja. Wszystko bardzo podobnie:
@RequestMapping(method = RequestMethod.PUT, value = "/topics/{id}") public void updateTopic(@RequestBody Topic topic, @PathVariable String id) { topicService.updateTopic(id,topic); }
Korzystamy z metody HTTP PUT.
public void updateTopic(String id, Topic topic) { for (int i = 0; i < topics.size(); ++i) { Topic t = topics.get(i); if (t.getId().equals(id)) { topics.set(i, topic); return; } } }
Teraz usuwanie. Wszystko analogicznie, tylko, że z metodą DELETE:
@RequestMapping(method = RequestMethod.DELETE, value = "/topics/{id}") public void deleteTopic(@PathVariable String id) { topicService.deleteTopic(id); }
public void deleteTopic(String id) { topics.removeIf(t -> t.getId().equals(id)); }