2015-09-05 144 views
0

我有兩個不同的請求來處理如何檢查請求參數/查詢參數是否在Spring MVC應用程序中的請求中傳遞?

  1. localhost:8080/myapp/status

  2. localhost:8080/myapp/status?v

請注意,在第二個請求,只是請求參數是通過。不需要爲其設置值。這是要求。

我將如何在我的控制器中處理這個問題?

@RequestMapping(value = "/status", method = RequestMethod.GET) 
    @ResponseBody 
    public void status(
         @RequestParam(value = "v", required = "false") final String verbose) { 

    //check if v is in query params 
      ...logic 
    //else 
     ..logic 
} 
+0

您是否嘗試過在映射使用'param'? – chrylis

+0

@chrylis:對不起,我不清楚你的意思 –

回答

1

您可以使用HttpServlerRequest.getParameterMap()這樣的:

@RequestMapping(value = "/status", method = RequestMethod.GET) 
@ResponseBody 
public void status(HttpServletRequest request) { 
    boolean verbose = request.getParameterMap().containsKey("v"); 
    if (verbose) { 
     ... 
    } else { 
     ... 
    } 
} 
相關問題