2017-03-14 13 views
0

URLをマップする必要があります。私のコントローラのtestdata-p-12345は、現在このマッピングでそれをしようとしています。URLでダッシュを使用したSpring RequestMapping

@RequestMapping(value = "/**/*-p-") 

そして、最初の変数のため:

... 
private static final String CODE_PATH_VARIABLE_PATTERN = "{myCode:.*}"; 
@RequestMapping(value = CODE_PATH_VARIABLE_PATTERN, method = RequestMethod.GET) 
    public String getDetail(@PathVariable("myCode") final String myCode, final Model model, 

... 

コントローラが呼び出されません、次のURLを呼び出すイムは、要求のマッピング内部のスプリング支持ダッシュをした場合、どのようにマッピングが見えるでしょうか?

https://localhost:9002/my/test-page/to/testdata-p-40022

+0

なぜ**前にしたいですか?これを行うには有効な方法ですか? –

+0

[Springの@RequestMappingでワイルドカードを使用する]の複製があります(http://stackoverflow.com/questions/5954793/using-springs-requestmapping-with-wildcards) –

答えて

-1

次の2つ以上のvlueと@RequestMapping設定することができます。

`  
@RequestMapping(value={"/hello","hello2"}) 
public Response hello(){ 
    return ok().put("hello", "hello world!"); 
} 
` 
0

はい、スプリングはリクエストマッピング内でダッシュをサポートしています。そして、あなたのコードは、次の呼び出しで完璧に動作します:

https://localhost:9002/my/test-page/to/testdata-p-/40022

お知らせ-P-と40022の間の追加のスラッシュ。

リクエストマッピングパスに先頭のスラッシュを指定しないと、デフォルトのリクエストマッピングハンドラがそれを行います。

https://stackoverflow.com/a/12744010/7709086を参照してください。

関連する問題