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
Spring mvc 只读在SpringMVC/Servlet中具有某些值的参数_Spring Mvc_Servlets - Fatal编程技术网

Spring mvc 只读在SpringMVC/Servlet中具有某些值的参数

Spring mvc 只读在SpringMVC/Servlet中具有某些值的参数,spring-mvc,servlets,Spring Mvc,Servlets,在servlet/SpringMVC中,有任何方法可以只读取那些具有某些值的参数 e.g p1=xyz&p2=&p3=abc 在这种情况下,我只想得到p1p3而不是p2。我有一个很长的参数列表,因此使用if-else将是一个非常冗长的想法。您可以尝试以下代码: @RequestMapping(value = "/hey", method = RequestMethod.GET) public void addEmployee1(@RequestParam Map<

在servlet/SpringMVC中,有任何方法可以只读取那些具有某些值的参数

e.g p1=xyz&p2=&p3=abc
在这种情况下,我只想得到
p1
p3
而不是
p2
。我有一个很长的参数列表,因此使用
if-else
将是一个非常冗长的想法。

您可以尝试以下代码:

@RequestMapping(value = "/hey", method = RequestMethod.GET)
    public void addEmployee1(@RequestParam Map<String, String> s) {
        Map<String, String> params = new HashMap<String, String>();
        for (String key : s.keySet()) {
            if (!s.get(key).isEmpty()) {
                params.put(key, s.get(key));
            }
        }
        System.out.println(params);
    }
@RequestMapping(value=“/hey”,method=RequestMethod.GET)
public void addEmployee1(@RequestParam映射s){
Map params=新的HashMap();
对于(字符串键:s.keySet()){
如果(!s.get(key).isEmpty()){
参数put(key,s.get(key));
}
}
系统输出打印项次(参数);
}

springmvc
中,您应该使用
@RequestParam
映射它们。决定如何处理这些值是特定于应用程序的,所以这取决于您如何编写。没有框架会神奇地知道您想要什么。