29

文字 e と数字のパターンに一致する場合にのみ使用されるリクエスト フィルタを作成しようとしています。しかし、私はそれを機能させることができないようです。正規表現で何かを試すたびに、400 エラーが発生し続けます。

以下を使用するだけで「機能」しますが、不要な番号を持たないマッピングもキャプチャします。

@RequestMapping(value = "e{number}",
            method = RequestMethod.GET)

以下の組み合わせを試しました。

@RequestMapping(value = "e{number}",
            params = "number:\\d+",
            method = RequestMethod.GET)

@RequestMapping(value = "e{number:\d+}",
            method = RequestMethod.GET)

@RequestMapping(value = "/e{^\\+?\\d+\$}",
            method = RequestMethod.GET)

@RequestMapping(value = "/{^\\e+?\\d+\$}",
            method = RequestMethod.GET)
4

2 に答える 2

46

ドキュメントによると、次のようなものを使用する必要があります{varName:regex}。例もあります:

@RequestMapping("/spring-web/{symbolicName:[a-z-]+}-{version:\\d\\.\\d\\.\\d}{extension:\\.[a-z]+}")
  public void handle(@PathVariable String version, @PathVariable String extension) {
    // ...
  }
}
于 2013-08-24T19:48:12.690 に答える