2014-03-31 63 views
0

在Spring MVC控制器中訪問未命名的請求參數的最簡單方法是什麼?是否有類似於@RequestParam的註釋?Spring MVC:獲取未命名的請求參數

HTTP刪除未命名的參數要求:

http://localhost/myEndPoint?someUnnamedParam 

控制器:

public class MyController { 
    @RequestMapping(value = {"/myEndPoint"}, method = RequestMethod.DELETE) 
    public void deleteThing() { 
     // Do something with unnamed param 
    } 
} 

詳情:春3.0.7

+0

「unnamed」參數意味着什麼? – GriffeyDog

+0

@GriffeyDog它的形式是'?value'而不是'?name = value' –

+0

怎麼樣做/ myEndPoint /值和使用@PathVariable? – GriffeyDog

回答

3

我想你誤會任何操作。

/myEndPoint?someUnnamedParam中,您有一個名爲someUnnamedParam的參數,其String值爲"",即。一個空的String。它的解析等同於/myEndPoint?someUnnamedParam=

您可以獲取一組參數名稱並將其用作值。

@RequestMapping(value = {"/myEndPoint"}, method = RequestMethod.DELETE) 
public void deleteThing((@RequestParam Map<String, List<String>> params) { 
    Set<String> paramNames = params.keySet(); 
    ... 
} 
1

您可以隨時使用

@RequestMapping(value = {"/myEndPoint"}, method = RequestMethod.DELETE) 
public void deleteThing(HttpServletRequest request) {   
    String param = request.getQueryString(); 
     // Do something with request 
} 

,並執行你需要request

+0

「HttpServletRequest」是否有非Java-EE替代品?我還會用什麼方法來獲取未命名的參數? –

+0

@MikeRylander我看到你已經找到了你的問題的答案:) – geoand