文字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)
ドキュメント によると、{varName:regex}
のようなものを使用する必要があります。例もあります:
@RequestMapping("/spring-web/{symbolicName:[a-z-]+}-{version:\\d\\.\\d\\.\\d}{extension:\\.[a-z]+}")
public void handle(@PathVariable String version, @PathVariable String extension) {
// ...
}
}
以下を使用する必要があります。
@RequestMapping("/e{number:\\d+})
\d
数字指定子の前の「エスケープされたスラッシュ」に注意してください。