Explication détaillée de l'utilisation de @RequestParam

Explication détaillée de l'utilisation de @RequestParam

@RequestParam est principalement utilisé pour mapper les données dans la zone des paramètres de la demande aux paramètres de la méthode de la couche de contrôle

Tout d'abord, nous devons savoir quels sont les principaux paramètres de l'annotation @RequestParam

  1. valeur : le nom du paramètre passé dans la requête. Si la valeur de l'interface d'arrière-plan n'est pas définie, la valeur par défaut sera le nom de la variable . Par exemple, si le premier paramètre de la figure ci-dessus ne définit pas value="page", le nom du paramètre transmis par le frontal doit être pageNum, sinon pageNum ne recevra pas les données correspondantes dans l'interface d'arrière-plan
  2. required : indique si ce paramètre est obligatoire. La valeur par défaut est true, ce qui signifie que le paramètre correspondant doit être transmis dans la requête, sinon une erreur 404 sera signalée. S'il est défini sur false, lorsqu'il n'y a pas de tel paramètre dans la requête, il sera par défaut nul. variables de types de données de base, il doit S'il y a une valeur, une exception de pointeur null sera levée. Si les valeurs nulles sont autorisées, les variables de l'interface doivent être déclarées à l'aide de classes wrapper.
  3. defaultValue : la valeur par défaut du paramètre. S'il n'y a pas de paramètre portant le même nom dans la requête, la variable utilise cette valeur par défaut. Notez que les valeurs par défaut peuvent utiliser des expressions SpEL, telles que "#{systemProperties['java.vm.version']}"
@ApiOperation(value = "获得工程列表(关键词 分页)")
@GetMapping(value = "/getList")
public CommonResult<?> getList(Principal principal, 
	@RequestParam(required = false,defaultValue="0",value="keyword") String keyword, 
	@Validated PagingParam pagingParam) {
    
    
	
	    SysUser user = userService.getItem(principal.getName());
	    if (user != null) {
    
    
	        Map<String, Object> map = projectService.getList(user, keyword, pagingParam);
	        return CommonResult.success(map);
	    } else {
    
    
	        return CommonResult.failed("用户不存在");
	    }
}

Que se passe-t-il si plusieurs paramètres portant le même nom sont transmis dans la requête, par exemple : url?userName=zhl&userName=holley ?

En fait, le format de données transmis à ce moment est : "zhl, holley", c'est-à-dire que plusieurs données sont séparées par des virgules. Dans l'interface d'arrière-plan, des variables de type tableau ou liste peuvent être utilisées pour recevoir :

public String 
requestparam8(@RequestParam(value="userName") String []  userNames) 

ou

public String requestparam8(@RequestParam(value="list") List<String> list) 

Supongo que te gusta

Origin blog.csdn.net/weixin_44860226/article/details/129626310
Recomendado
Clasificación