Spring MVC-Textbereich

Spring MVC Textarea Beispiel

Verwenden Sie in Spring MVC<form:textarea />, um ein HTML-Textfeld zu rendern. Zum Beispiel,

    

Es wird der folgende HTML-Code gerendert

    

In diesem Tutorial zeigen wir Ihnen, wie Sie das Spring-Formular-Tag "textarea" bisrender a HTML textarea verwenden, um die "address" zu speichern. Fügen Sie außerdem einen Validator hinzu, um sicherzustellen, dass der Textbereich beim Absenden des Formulars nicht leer ist.

1. Regler

ASimpleFormController, um den Formularwert zu verarbeiten.

Datei: TextAreaController.java

package com.example.customer.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import com.example.customer.model.Customer;

public class TextAreaController extends SimpleFormController{

    public TextAreaController(){
        setCommandClass(Customer.class);
        setCommandName("customerForm");
    }

    @Override
    protected ModelAndView onSubmit(HttpServletRequest request,
        HttpServletResponse response, Object command, BindException errors)
        throws Exception {

        Customer customer = (Customer)command;
        return new ModelAndView("CustomerSuccess","customer",customer);

    }

}

2. Modell

Ein Kundenobjekt zum Speichern des Textbereichswerts.

Datei: Customer.java

package com.example.customer.model;

public class Customer{

    String address;
    //getter and setter methods for address
}

3. Formularvalidator

Erstellen Sie eine Formularprüfklasse und verwenden Sie die KlasseValidationUtils, um sicherzustellen, dass die "Adresse" nicht leer ist. Andernfalls erhalten Sie die Nachricht "required.address" aus dem entsprechenden Ressourcenpaket (Eigenschaftendatei).

Datei: CustomerValidator.java

package com.example.customer.validator;

import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;

import com.example.customer.model.Customer;

public class CustomerValidator implements Validator{

    @Override
    public boolean supports(Class clazz) {
        //just validate the Customer instances
        return Customer.class.isAssignableFrom(clazz);
    }

    @Override
    public void validate(Object target, Errors errors) {

        ValidationUtils.rejectIfEmptyOrWhitespace(errors, "address",
             "required.address", "Field name is required.");

    }
}

Datei: message.properties

required.address = Address is required!

4. View

Eine JSP-Seite, auf der das Spring-Formular-Tag "textarea" zum Rendern eines HTML-Textbereichs verwendet und einige CSS-Stile eingefügt werden, um die Fehlermeldung hervorzuheben.

Datei: CustomerForm.jsp

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>






    

Spring's form textarea example

Address :

Wenn das Formular gesendet wird, rendern Sie die erfolgreiche Seite und zeigen Sie den gesendeten Textbereichswert an.

Datei: CustomerSuccess.jsp



    

Spring's form textarea example

Address : ${customer.address}

5. Spring Bean Konfiguration

Verknüpfe alles ~



  

    
        
        

        
        
            
        
    

    
    
        
    

    
        
            /WEB-INF/pages/
        
        
            .jsp
        
    

6. Demo

Greifen Sie auf die Seite zu -http://localhost:8080/SpringMVCForm/textarea.htm

SpringMVC-TextArea-Example-1

Wenn der Textbereichswert beim Absenden des Formulars leer ist, zeigen Sie die Fehlermeldung an und markieren Sie sie.

SpringMVC-TextArea-Example-2

Wenn das Formular erfolgreich gesendet wurde, zeigen Sie einfach den gesendeten Textbereichswert an.

SpringMVC-TextArea-Example-3

Quellcode herunterladen

Laden Sie es herunter -SpringMVCForm-TextArea-Example.zip (9KB)