Spring MVC - Textfeld Beispiel
Das folgende Beispiel zeigt, wie Textfelder in Formularen mithilfe des Spring Web MVC-Frameworks verwendet werden. Lassen Sie uns zunächst eine funktionierende Eclipse-IDE einrichten und die folgenden Schritte ausführen, um eine auf dynamischen Formularen basierende Webanwendung mit dem Spring Web Framework zu entwickeln:
Schritt | Beschreibung |
---|---|
1 | Erstellen Sie ein Projekt mit dem Namen HelloWeb unter einem Paket com.tutorialspoint, wie im Kapitel Spring MVC - Hello World Example erläutert. |
2 | Erstellen Sie eine Java-Klasse Student, StudentController unter dem Paket com.tutorialspoint. |
3 | Erstellen Sie eine Ansichtsdatei student.jsp, result.jsp im Unterordner jsp. |
4 | Der letzte Schritt besteht darin, den Inhalt der Quell- und Konfigurationsdateien zu erstellen und die Anwendung wie unten erläutert zu exportieren. |
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";
}
}
Hier die erste Servicemethode student()haben wir ein leeres Studentobject im ModelAndView-Objekt mit dem Namen "command" übergeben, da das Spring-Framework ein Objekt mit dem Namen "command" erwartet, wenn Sie es verwenden <form:form>Tags in Ihrer JSP-Datei. Wenn also die student () -Methode aufgerufen wird, wird sie zurückgegebenstudent.jsp view.
Die zweite Servicemethode addStudent() wird gegen eine POST-Methode auf dem aufgerufen HelloWeb/addStudentURL. Sie bereiten Ihr Modellobjekt basierend auf den übermittelten Informationen vor. Schließlich wird von der Servicemethode eine "Ergebnis" -Ansicht zurückgegeben, die zum Rendern von result.jsp führt
student.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>
Hier verwenden wir <form:input />Tag zum Rendern eines HTML-Textfelds. Zum Beispiel -
<form:input path = "name" />
Der folgende HTML-Inhalt wird gerendert.
<input id = "name" name = "name" type = "text" value = ""/>
result.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>
Wenn wir mit dem Erstellen der Quell- und Konfigurationsdateien fertig sind, exportieren Sie Ihre Anwendung. Klicken Sie mit der rechten Maustaste auf Ihre Anwendung und verwenden SieExport → WAR File Option und speichern Sie die HelloWeb.war Datei im Webapps-Ordner von Tomcat.
Starten Sie nun den Tomcat-Server und stellen Sie sicher, dass Sie mit einem Standardbrowser über den Ordner webapps auf andere Webseiten zugreifen können. Versuchen Sie eine URL -http://localhost:8080/HelloWeb/student und wir werden den folgenden Bildschirm sehen, wenn mit der Spring-Webanwendung alles in Ordnung ist.

Klicken Sie nach dem Senden der erforderlichen Informationen auf die Schaltfläche Senden, um das Formular zu senden. Wir sollten den folgenden Bildschirm sehen, wenn mit der Spring-Webanwendung alles in Ordnung ist.
