Spring MVC - Form İşleme Örneği

Aşağıdaki örnek, basit bir web tabanlı Hello WorldSpring MVC Framework kullanarak uygulama. Başlangıç ​​olarak, çalışan bir Eclipse IDE'ye sahip olalım ve Spring Web Framework'ü kullanarak Dinamik Web Uygulaması geliştirmek için sonraki adımları takip edelim.

Adım Açıklama
1 Spring MVC - Hello World bölümünde açıklandığı gibi com.tutorialspoint paketinin altında HelloWeb adıyla bir proje oluşturun.
2 Com.tutorialspoint paketi altında Student, StudentController Java sınıfları oluşturun.
3 Jsp alt klasörü altında öğrenci.jsp, sonuç.jsp görünüm dosyalarını oluşturun.
4 Son adım, kaynak ve yapılandırma dosyalarının içeriğini oluşturmak ve uygulamayı aşağıda açıklandığı gibi dışa aktarmaktır.

Student.java

package com.tutorialspoint;

public class Student {
   private Integer age;
   private String name;
   private Integer id;

   public void setAge(Integer age) {
      this.age = age;
   }
   public Integer getAge() {
      return age;
   }

   public void setName(String name) {
      this.name = name;
   }
   public String getName() {
      return name;
   }

   public void setId(Integer id) {
      this.id = id;
   }
   public Integer getId() {
      return id;
   }
}

StudentController.java

package com.tutorialspoint;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.ui.ModelMap;

@Controller
public class StudentController {

   @RequestMapping(value = "/student", method = RequestMethod.GET)
   public ModelAndView student() {
      return new ModelAndView("student", "command", new Student());
   }
   
   @RequestMapping(value = "/addStudent", method = RequestMethod.POST)
   public String addStudent(@ModelAttribute("SpringWeb")Student student, 
   ModelMap model) {
      model.addAttribute("name", student.getName());
      model.addAttribute("age", student.getAge());
      model.addAttribute("id", student.getId());
      
      return "result";
   }
}

İşte ilk servis yöntemi student(), ModelAndView nesnesine "command" adıyla boş bir Studentobject geçtik. Bu, JSP dosyasında <form: form> etiketleri kullanırsak, yay çerçevesinin "command" adında bir nesne beklemesi nedeniyle yapılır. Bu nedenle, öğrenci () yöntemi çağrıldığında, öğrenci.jsp görünümünü döndürür.

İkinci hizmet yöntemi addStudent()HelloWeb / addStudent URL'sindeki bir POST yöntemine karşı çağrılacaktır. Model nesnenizi gönderilen bilgilere göre hazırlayacaksınız. Son olarak, servis yönteminden bir "sonuç" görünümü döndürülür ve sonuç.jsp oluşturulmasına neden olur.

öğrenci.jsp

<%@taglib uri="http://www.springframework.org/tags/form" prefix = "form"%>
<html>
   <head>
      <title>Spring MVC Form Handling</title>
   </head>
   
   <body>
      <h2>Student Information</h2>
      <form:form method = "POST" action = "/HelloWeb/addStudent">
         <table>
            <tr>
               <td><form:label path = "name">Name</form:label></td>
               <td><form:input path = "name" /></td>
            </tr>
            <tr>
               <td><form:label path = "age">Age</form:label></td>
               <td><form:input path = "age" /></td>
            </tr>
            <tr>
               <td><form:label path = "id">id</form:label></td>
               <td><form:input path = "id" /></td>
            </tr>
            <tr>
               <td colspan = "2">
                  <input type = "submit" value = "Submit"/>
               </td>
            </tr>
         </table>  
      </form:form>
   </body>
</html>

sonuç.jsp

<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
   <head>
      <title>Spring MVC Form Handling</title>
   </head>
   <body>

      <h2>Submitted Student Information</h2>
      <table>
         <tr>
            <td>Name</td>
            <td>${name}</td>
         </tr>
         <tr>
            <td>Age</td>
            <td>${age}</td>
         </tr>
         <tr>
            <td>ID</td>
            <td>${id}</td>
         </tr>
      </table>  
   </body>
</html>

Kaynak ve yapılandırma dosyalarını oluşturmayı bitirdiğimizde, uygulamanızı dışa aktarın. Uygulamanıza sağ tıklayın, Export → WAR Dosyası seçeneğini kullanın veSpringWeb.war Tomcat'in webapps klasöründeki dosya.

Şimdi, Tomcat sunucusunu başlatın ve diğer web sayfalarına standart bir tarayıcı kullanarak webapps klasöründen erişebildiğinizden emin olun. Şimdi, bir URL deneyin - http: // localhost: 8080 / SpringWeb / öğrenci ve Spring Web Uygulaması ile her şey yolundaysa aşağıdaki ekranı görmelisiniz.

Gerekli bilgileri gönderdikten sonra, formu göndermek için gönder düğmesine tıklayın. Spring Web Uygulamanızda her şey yolundaysa aşağıdaki ekranı görmelisiniz.