28

SpringMVCへのSpring3のRESTfulな追加に関して読んだすべてのチュートリアルと記事で、次のように、を介してクエリデータを渡すための1つの方法しか見たことがあり@PathVariableませ

@RequestMapping(value="/shops/{name}", method=RequestMethod.GET)
public @ResponseBody Shop getShopInJSON(@PathVariable String name) {
    ...
}

これは、のようなものに応答しhttp://www.example.com/myservlet/shops/{name}、に評価される可能性がありhttp://www.example.com/myservlet/shops/thebestshoparoundます。

http://www.example.com/myservlet/shops?name=thebestshoparound私の質問はこれです:例えば、の代わりに、古典的なクエリ文字列に基づいてリクエストを受け取るRESTfulインターフェースを設定することは可能PathVariablesですか?

これは本当に簡単な質問のように思えますが、オンラインのどこにも見つかりません。

4

1 に答える 1

48

はい、注釈を使用します@RequestParam。例を次に示します。

public @ResponseBody Shop getShopInJSON(@PathVariable String name, @RequestParam(value="query", required=false) String query) {
    // do stuff
}
于 2012-09-10T22:25:44.670 に答える