Beispiel für ein Struts-Textfeld
Laden Sie dieses Beispiel für das Textfeld Struts herunter -Struts-TextBox-Example.zip
In diesem Struts-Beispiel erfahren Sie, wie Sie ein HTML-Textfeldeingabefeld mit dem Tag Struts<html:text>erstellen, das Textfeld mitActionForm validieren, die Fehlermeldung mitActionErrors anzeigen und außerdem Nachrichtenressource auf der JSP-Seite.
1. Ordnerstruktur
Dies ist die endgültige Projektstruktur, die von Maven erstellt wurde. Bitte erstellen Sie die entsprechenden Ordner.
2. Aktionsklasse
Erstellen Sie eine Action-Klasse, und leiten Sie die Anforderung weiter.
UserAction.java
package com.example.common.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; public class UserAction extends Action{ public ActionForward execute(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception { return mapping.findForward("success"); } }
3. Eigenschaftendatei
Erstellen Sie eine Eigenschaftendatei, und deklarieren Sie die Fehler- und Beschriftungsmeldungen.
Common.properties
#common module error message error.common.name.required = Name is required. #common module label message label.common.name = UserName label.common.button.submit = Submit label.common.button.reset = Reset
4. ActionForm
Erstellen Sie ein ActionForm, akzeptieren Sie einen Benutzernamen und validieren Sie ihn mit der validate () -Methode. Wenn der Benutzername leer ist, rufen Sie eine Fehlermeldung aus der obigen Eigenschaftendatei ab und fügen Sie sie als Schlüssel "common.name.err" in ActionErrors hinzu. Später wird dieser Name "common.name.err" verwendet, um die Fehlermeldung in JSP anzuzeigen .
UserForm.java
package com.example.common.form; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionMessage; public class UserForm extends ActionForm{ String username; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } @Override public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { ActionErrors errors = new ActionErrors(); if( getUsername() == null || ("".equals(getUsername()))) { errors.add("common.name.err", new ActionMessage("error.common.name.required")); } return errors; } @Override public void reset(ActionMapping mapping, HttpServletRequest request) { // reset properties username = ""; } }
5. JSP-Seite
Verwenden Sie das HTML-Tag<html:text>der Struts, um ein Eingabefeld für das HTML-Textfeld zu erstellen. Die Beschriftungsnachricht ist in der obigen Eigenschaftendatei deklariert. Sie können sie direkt über<bean:message key=”label_name” /> abrufen.
Die Fehlermeldung kann auf zwei Arten angezeigt werden:
-
Alle Fehlermeldungen anzeigen
-
Zeigen Sie die angegebene Fehlermeldung an, indem Sie den in ActionErrors deklarierten Fehlermeldungsschlüssel angeben.
login.jsp
Struts html:text example
:
Zeigen Sie die Eingabe des Textfelds an.
welcome.jsp
Welcome
6. struts-config.xml
Erstellen Sie eine Struts-Konfigurationsdatei und verknüpfen Sie sie miteinander.
In Action-Tag-Attributen:
-
Pfad = Webpfad, auf den Sie zugreifen
-
Typ = Ihre Aktionsklasse
-
Name = Ihr Aktionsformular
-
validate = true bewirkt, dass ActionForm die validate () - Methode für die Formularüberprüfung verwendet
-
Eingabe = Wenn die Validierung falsch ist, wohin weiterleiten?
Sie müssen Ihre Eigenschaftendatei in die Dateistruts-config.xmlaufnehmen, um Struts auf Ihre benutzerdefinierte Ressourcennachricht aufmerksam zu machen.
7. web.xml
Erstellen Sie abschließend eine web.xml für die Strut-Framework-Integration.
Maven Struts Examples action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml 1 action *.do
Darauf zuzugreifen
Wenn der Benutzer das Textfeld nicht ausgefüllt und die Senden-Schaltfläche gedrückt hat, wird eine Fehlermeldung angezeigt.
Wenn der Benutzer das Textfeld ausfüllt, klicken Sie auf "Senden".
Der Eingabewert des Textfelds wird an die Begrüßungsseite übergeben und angezeigt.