Spring MVC - Metin Kutusu Örneği

Aşağıdaki örnek, Spring Web MVC çerçevesini kullanarak formlarda Metin kutularının nasıl kullanılacağını gösterir. Başlangıç ​​olarak, çalışan bir Eclipse IDE'ye sahip olalım ve Spring Web Framework'ü kullanarak Dinamik Form tabanlı bir Web Uygulaması geliştirmek için aşağıdaki adımlara sadık kalalım -

Adım Açıklama
1 Spring MVC - Hello World Example bölümünde açıklandığı gibi com.tutorialspoint paketinin altında HelloWeb adlı bir proje oluşturun.
2 Com.tutorialspoint paketi altında Student, StudentController adlı bir Java sınıfı oluşturun.
3 Jsp alt klasörü altında student.jsp, result.jsp adlı bir görünüm dosyası 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ında boş bir Studentobject geçtik, çünkü kullanıyorsanız yay çerçevesi "command" adında bir nesne bekliyor <form:form>JSP dosyanızdaki etiketler. Öyleyse, student () yöntemi çağrıldığında döndürülürstudent.jsp view.

İkinci hizmet yöntemi addStudent() bir POST yöntemine karşı çağrılacak HelloWeb/addStudentURL. 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ç olarak sonuç oluşturulur.jsp

öğ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>

Burada kullanıyoruz <form:input />HTML metin kutusu oluşturmak için etiket. Örneğin -

<form:input path = "name" />

Aşağıdaki HTML içeriğini oluşturacaktır.

<input id = "name" name = "name" type = "text" value = ""/>

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, kullanınExport → WAR File seçeneğini belirleyin ve kaydedin HelloWeb.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. Bir URL deneyin -http://localhost:8080/HelloWeb/student Spring Web Uygulamasında her şey yolunda giderse aşağıdaki ekranı göreceğiz.

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