Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Validation 如何在spring控制器中验证映射为@RequestParam_Validation_Spring Mvc_Hashmap - Fatal编程技术网

Validation 如何在spring控制器中验证映射为@RequestParam

Validation 如何在spring控制器中验证映射为@RequestParam,validation,spring-mvc,hashmap,Validation,Spring Mvc,Hashmap,如何在spring控制器中将映射验证为@RequestParam public class Controller { @RequestMapping(value="/") public ModelAndView requestMethod(@RequestParam Map<String, String> mapParam){ ////some stuff here }; 公共类控制器{ @请求映射(value=“/”) 公共ModelAndView re

如何在spring控制器中将映射验证为
@RequestParam

public class Controller   {

    @RequestMapping(value="/")
    public ModelAndView requestMethod(@RequestParam Map<String, String> mapParam){

////some stuff here

};
公共类控制器{
@请求映射(value=“/”)
公共ModelAndView requestMethod(@RequestParam Map mapParam){
////这里有些东西
};

首先,您应该将Map作为RequestBody而不是RequestParam发送

您应该创建请求DTO对象而不是Map,以验证需要单独遍历和验证每个键的映射,但使用DTO,您可以使用
@Valid
@RequestBody
直接验证


有关
@Valid
的相关代码,请参阅此链接:

谢谢您的回答!但该应用程序已经构建并且是稳定的,它们正在url中传递键值对,并通过RequestParam接受它们。它不能更改为RequestBody或DTO对象。我关心的是如何验证此参数值!您可以使用
Spring AOP
验证请求参数。