diff --git a/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/InMemoryMessageRepository.java b/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/InMemoryMessageRepository.java old mode 100644 new mode 100755 index 3a347cfda6..af360eff42 --- a/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/InMemoryMessageRepository.java +++ b/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/InMemoryMessageRepository.java @@ -50,4 +50,9 @@ public class InMemoryMessageRepository implements MessageRepository { return this.messages.get(id); } + @Override + public void deleteMessage(Long id) { + this.messages.remove(id); + } + } diff --git a/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/MessageRepository.java b/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/MessageRepository.java old mode 100644 new mode 100755 index 5607a6fa7d..52c336c43a --- a/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/MessageRepository.java +++ b/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/MessageRepository.java @@ -24,4 +24,6 @@ public interface MessageRepository { Message findMessage(Long id); + void deleteMessage(Long id); + } diff --git a/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/mvc/MessageController.java b/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/mvc/MessageController.java old mode 100644 new mode 100755 index cb0254c8a9..3a6131e560 --- a/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/mvc/MessageController.java +++ b/spring-boot-samples/spring-boot-sample-web-ui/src/main/java/sample/web/ui/mvc/MessageController.java @@ -30,6 +30,7 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes; /** * @author Rob Winch + * @author Doo-Hwan Kwak */ @Controller @RequestMapping("/") @@ -73,4 +74,16 @@ public class MessageController { throw new RuntimeException("Expected exception in controller"); } + @RequestMapping(value = "delete/{id}") + public ModelAndView delete(@PathVariable("id") Long id) { + this.messageRepository.deleteMessage(id); + Iterable messages = this.messageRepository.findAll(); + return new ModelAndView("messages/list", "messages", messages); + } + + @RequestMapping(value = "modify/{id}", method = RequestMethod.GET) + public ModelAndView modifyForm(@PathVariable("id") Message message) { + return new ModelAndView("messages/form", "message", message); + } + } diff --git a/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/form.html b/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/form.html index 08994a49bf..20ff318301 100644 --- a/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/form.html +++ b/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/form.html @@ -26,6 +26,10 @@ Messages +
- +
diff --git a/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/view.html b/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/view.html index bf8f7a1790..37d2e3200e 100644 --- a/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/view.html +++ b/spring-boot-samples/spring-boot-sample-web-ui/src/main/resources/templates/messages/view.html @@ -37,6 +37,17 @@ A detailed message that is longer than the summary. +
+ + delete + + | + + modify + +
\ No newline at end of file