summaryrefslogtreecommitdiff
path: root/spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java
diff options
context:
space:
mode:
authorKamal Wickramanayake <kamal@inbox.lk>2026-06-13 18:13:59 +0530
committerKamal Wickramanayake <kamal@inbox.lk>2026-06-13 18:13:59 +0530
commit6ae21cd4e51756ea14b43b82a9d500bca9fb8032 (patch)
treea330377fff7709cae00fe9d39c9281809e09aa75 /spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java
parentfa880db84ec4507010a4d29b7cb0308f82553834 (diff)
Added 08-spring-security-simple
Diffstat (limited to 'spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java')
-rw-r--r--spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java b/spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java
new file mode 100644
index 0000000..20c482d
--- /dev/null
+++ b/spring-boot/08-spring-security-simple/src/main/java/com/example/spring/contact/ContactController.java
@@ -0,0 +1,34 @@
+package com.example.spring.contact;
+
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.ModelAttribute;
+import org.springframework.web.bind.annotation.PostMapping;
+
+import jakarta.validation.Valid;
+
+@Controller
+public class ContactController {
+
+ @GetMapping("/contact")
+ public String showForm(Model model) {
+ model.addAttribute("contactForm", new ContactForm());
+ return "contact/form";
+ }
+
+ @PostMapping("/contact")
+ public String processSubmission(@Valid @ModelAttribute ContactForm contactForm, BindingResult bindingResult,
+ Model model) {
+ if (bindingResult.hasErrors()) {
+ return "contact/form";
+ }
+
+ // Do whatever needed with the submitted data here.
+ // For example, invoke a method in a service/componet bean to send an email to contact person.
+
+ return "contact/result";
+ }
+
+}