Maison >Java >javaDidacticiel >Explication détaillée de plusieurs méthodes permettant à Java Spring Controller d'obtenir les paramètres de requête

Explication détaillée de plusieurs méthodes permettant à Java Spring Controller d'obtenir les paramètres de requête

高洛峰
高洛峰original
2017-01-23 10:45:122521parcourir

Plusieurs méthodes permettant à Java Spring Controller d'obtenir les paramètres de la requête

1. Écrivez directement les paramètres du formulaire dans les paramètres formels de la méthode correspondante du Controller. Il convient à la soumission par la méthode get, mais. ne convient pas à la soumission par la méthode postale. Si "Content-Type"="application/x-www-form-urlencoded", vous pouvez utiliser la publication pour soumettre le formulaire

URL : http://localhost:8080/SSMDemo/demo/addUser1?username= lixiaoxi&password=111111 Les paramètres soumis doivent être cohérents avec les noms des paramètres d'entrée dans la méthode Controller. ​

/**
  * 1.直接把表单的参数写在Controller相应的方法的形参中
  * @param username
  * @param password
  * @return
  */
 @RequestMapping("/addUser1")
 public String addUser1(String username,String password) {
   System.out.println("username is:"+username);
   System.out.println("password is:"+password);
   return "demo/index";
 }

2. Recevez via HttpServletRequest, les méthodes de publication et d'obtention sont disponibles.

/**
  * 2、通过HttpServletRequest接收
  * @param request
  * @return
  */
 @RequestMapping("/addUser2")
 public String addUser2(HttpServletRequest request) {
   String username=request.getParameter("username");
   String password=request.getParameter("password");
   System.out.println("username is:"+username);
   System.out.println("password is:"+password);
   return "demo/index";
 }

3. Recevez via un bean, les méthodes de publication et d'obtention sont disponibles.

/**
 * 3、通过一个bean来接收
 * @param user
 * @return
 */
@RequestMapping("/addUser3")
public String addUser3(UserModel user) {
  System.out.println("username is:"+user.getUsername());
  System.out.println("password is:"+user.getPassword());
  return "demo/index";
}

4. Utilisez l'annotation @ModelAttribute pour obtenir les données du formulaire FORM de la requête POST

/**
   * 4、使用@ModelAttribute注解获取POST请求的FORM表单数据
   * @param user
   * @return
   */
  @RequestMapping(value="/addUser5",method=RequestMethod.POST)
  public String addUser5(@ModelAttribute("user") UserModel user) {
    System.out.println("username is:"+user.getUsername());
    System.out.println("password is:"+user.getPassword());
    return "demo/index";
  }

5. l'annotation @RequestParam pour lier Définissez les paramètres de requête sur les paramètres d'entrée de la méthode

Lorsque le paramètre de requête nom d'utilisateur n'existe pas, une exception se produira. Cela peut être résolu en définissant l'attribut require=false, par exemple :

@RequestParam(value="username", required=false)
  **** 若"Content-Type"="application/x-www-form-urlencoded",post get都可以
  **** 若"Content-Type"="application/application/json",只适用get
   /**
   * 5、用注解@RequestParam绑定请求参数到方法入参
   * @param username
   * @param password
   * @return
   */
  @RequestMapping(value="/addUser6",method=RequestMethod.GET)
  public String addUser6(@RequestParam("username") String username,@RequestParam("password") String password) {
    System.out.println("username is:"+username);
    System.out.println("password is:"+password);
    return "demo/index";
  }

6. Utilisez request.getQueryString() pour obtenir les paramètres de la requête d'obtention Spring MVC. Cela s'applique uniquement aux requêtes d'obtention

@RequestMapping(value="/addUser6",method=RequestMethod.GET)
public String addUser6(HttpServletRequest request) {
  System.out.println("username is:"+request.getQueryString());
  return "demo/index";
}
<.>

Merci d'avoir lu, j'espère que cela pourra vous aider. Merci à tous de soutenir ce site !

Pour des explications plus détaillées sur les différentes méthodes de Java Spring Controller pour obtenir les paramètres de requête, veuillez prêter attention au site Web PHP chinois pour les articles connexes !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn