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

L'annotation RequestParam de Spring MVC

Dans Spring MVC, @RequestParam Les annotations sont utilisées pour lire les données du formulaire et les lier automatiquement aux paramètres fournis par la méthode. Par conséquent, il ignore HttpServletRequest Les exigences de lecture des données fournies par l'objet.

Il inclut les données du formulaire, il mappera également les paramètres de la requête aux paramètres de la requête et aux parties de la requête multipart. Si le type de paramètre de méthode est Map et que le nom du paramètre de la requête est spécifié, la valeur du paramètre de la requête sera convertie en Map, sinon tous les noms et valeurs des paramètres de la requête rempliront les paramètres map.

Exemple de Spring MVC RequestParam

Nous créons une page de connexion contenant le nom d'utilisateur et le mot de passe. Ici, nous utilisons des valeurs spécifiques pour vérifier le mot de passe.

1、ajouter les dépendances au pom.xml

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

2、créer une page de requête

Ceci est une page de connexion où nous recevons le nom d'utilisateur et le mot de passe de l'utilisateur.

index.jsp

<html>
<body>
<form action="hello">
Nom d'utilisateur : <input type="text" name="name"/> <br><br> 
Mot de passe : <input type="text" name="pass"/> <br><br> 
<input type="submit" name="submit">
</form>
</body>
</html>

3、créer une classe contrôleur

Dans la classe contrôleur :

@RequestParam est utilisé pour lire les données de formulaire HTML fournies par l'utilisateur et les lier aux paramètres de la requête. Le modèle contient les données de la requête et les fournit à la page de visualisation.

HelloController.java

package com.w3codebox;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class HelloController {}}
    @RequestMapping("/hello)
    //Lire les données du formulaire fournies
    public String display(@RequestParam("name") String name, @RequestParam("pass") String pass, Model m)
    {
        if(pass.equals("admin"))
        {
            String msg="Hello"+ name;
            //Ajouter un message au modèle
            m.addAttribute("message", msg);
            return "viewpage";
        }
        else
        {
            String msg="Sorry"+ name+". Vous avez entré un mot de passe incorrect";
            m.addAttribute("message", msg);
            return "errorpage";
        }   
    }
}

4、créer d'autres composants de vue

Pour exécuter cet exemple, les composants de vue suivants doivent se trouver dans le répertoire WEB-INF/dans le répertoire jsp.

viewpage.jsp

<html>
<body>
${message}
</body>
</html>

errorpage.jsp

<html>
<body>
${message}
<br><br>
<jsp:include page="/index.jsp></jsp:include>
</body>
</html>
</html>

Sortie: