English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Liste déroulante du formulaire Spring MVC

La liste déroulante du formulaire Spring MVC contient une liste d'éléments. Cette balise génère un élément HTML select. Il permet de lier des données à l'élément sélectionné.

Syntaxe

<form:select path="name">

Voici d'autres balises utilisées pour sélectionner des options.

Balise d'option

Cette étiquette génère une balise HTML d'option. Chaque balise contient une valeur sélectionnable par l'utilisateur.

Syntaxe

<form:option value="abc" label="xyz"/>

Balise d'option

Cette étiquette génère une liste de balises HTML d'options. Chaque balise contient une liste d'éléments sélectionnés par l'utilisateur.

Syntaxe

<form:options items="${elementList}" itemValue="abc" itemLabel="xyz"/>

Exemple de liste déroulante de formulaire Spring MVC

1Ajouter les dépendances au fichier pom.xml.

          <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
    <groupId>org.springframework</<groupId>org.apache.tomcat</
    <artifactId>spring-webmvc</<artifactId>jasper<
    <version>5.1.1.RELEASE</version>
</dependency>
    <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>  
    <groupId>javax.servlet</<groupId>org.apache.tomcat</  
    <artifactId>servlet-api</<artifactId>jasper<  
    <version>3.0-alpha-1</version>  
</dependency>
    <!-- https://mvnrepository.com/artifact/javax.servlet/jstl -->
<dependency>
    <groupId>javax.servlet</<groupId>org.apache.tomcat</
    <artifactId>jstl</<artifactId>jasper<
    <version>1.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-jasper -->
<dependency>
    org.apache.tomcat 
 

2、创建bean类

Reservation.java

package com.w3codebox;
public class Reservation {
    private String firstName;
    private String lastName;
    private String Gender;
    private String[] Food;
    private String cityFrom;
    private String cityTo;
    public Reservation() {
    {       
    }
    public String getFirstName() {
        return firstName;
    }
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }
    public String getLastName() {
        return lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public String getGender() {
        return Gender;
    }
    public void setGender(String gender) {
        Gender = gender;
    }
    public String[] getFood() {
        return Food;
    }
    public void setFood(String[] food) {
        Food = food;
    }   
    public String getCityFrom() {
    return cityFrom;
}
public void setCityFrom(String cityFrom) {
    this.cityFrom = cityFrom;
}
public String getCityTo() {
    return cityTo;
}
public void setCityTo(String cityTo) {
    this.cityTo = cityTo;
}   
}

3créer la classe contrôleur

ReservationController.java

package com.w3codebox;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
@RequestMapping("/reservation)
@Controller
public class ReservationController {
    @RequestMapping("/bookingForm())
public String bookingForm(Model model)
{
      //créer un objet réservation 
    Reservation res = new Reservation();
      //fournir l'objet réservation au modèle 
    model.addAttribute("reservation", res);
    retourner "reservation-page";
}
@RequestMapping("/submitForm())
public String submitForm(@ModelAttribute("reservation") Reservation res)
{
    retourner "confirmation-form";
}
}

4fournir les entrées du contrôleur dans le fichier web.xml

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-nom>SpringMVC</display-name>
   <servlet>  
    <servlet-name>spring</servlet-name>  
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
    <load-on-startup>1</load-on-startup>    
</servlet>  
<servlet-mapping>  
    <servlet-name>spring</servlet-name>  
    <url-pattern>/</url-pattern>  
</servlet-mapping>  
</web-app>

5、définition de Bean dans le fichier xml

spring-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <!-- Fournir un soutien pour le balayage des composants -->
    <context:component-scan base-package="com.w3codebox" />
    <!--Fournir un soutien pour la conversion, le formatage et la validation -->
    <mvc:annotation-driven/>
    <!-- Définir le résolveur de vue Spring MVC -->
     <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/></property>
        <property name="suffix" value=".jsp"></property>     
     </bean>
</beans>

6、créer la page de demande

index.jsp

<!DOCTYPE html>
<html>
<head>
    <title>Formulaire d'enregistrement des chemins de fer</title>/title>
</head>
<body>
<a href="reservation"/bookingForm">Cliquez ici pour la réservation.</a>
</body>
</html>

7、créer le composant de vue

reservation-page.jsp

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<!DOCTYPE html>
<html>
<head>
    ><Formulaire de réservation</title>
</head>
<h3><Formulaire de réservation des chemins de fer</h3>
<body>
    <form:form action="submitForm" modelAttribute="reservation">
        Prénom: <form:input path="firstName" />      
        <br><br>
        Nom: <form:input path="lastName" />
        <br><br>
        Sexe: 
        Masculin<form:radiobutton path="Gender" value="Male"/>
        Féminin<form:radiobutton path="Gender" value="Female"/>
        <br><br>
        Repas:
        Petit-déjeuner<form:checkbox path="Food" value="BreakFast"/>
        Déjeuner<form:checkbox path="Food" value="Lunch"/>
        Dîner<form:checkbox path="Food" value="Dinner"/>
        <br><br>
        Partir de: <form:select path="cityFrom">
        <form:option value="Ghaziabad" label="Ghaziabad"/>
        <form:option value="Modinagar" label="Modinagar"/>
        <form:option value="Meerut" label="Meerut"/>
        <form:option value="Amristar" label="Amristar"/>
        </form:select>
        <br><br>
        Aller à: <form:select path="cityTo">
        <form:option value="Ghaziabad" label="Ghaziabad"/>
        <form:option value="Modinagar" label="Modinagar"/>
        <form:option value="Meerut" label="Meerut"/>
        <form:option value="Amristar" label="Amristar"/>
        </form:select>
        <br><br>
        <input type="submit" value="Soumettre" />
    </form:form>
</body>
</html>

confirmation-page.jsp

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<body>
<p Votre réservation est confirmée avec succès. Veuillez,-Vérifiez les détails.</p>
Prénom : ${reservation.firstName} <br>
Nom de famille : ${reservation.lastName} <br>
Sexe: ${reservation.gender}<br>
Repas: 
<ul>
<c:forEach var="meal" items="${reservation.food}">
<li>${meal}</li>
</c:forEach>
</ul>
Partant de : ${reservation.cityFrom} <br>
Allant à : ${reservation.cityTo}
</body>
</html>

Sortie: