2017-12-15 9 views
3

:.+{param:.+}は、このコードセットでJavaの意味は何ですか?私は検索しようとしましたが、私は何の説明も見つけません。知っている人はそれを私に説明してください。どうもありがとうございます。{param:。+}の ":+"は(java)を意味しますか?

BatchFileController.java

@RequestMapping("/runbatchfileparam/{param:.+}") 
public ResultFormat runbatchFile(@PathVariable("param") String fileName) 
{ 
RunBatchFile rbf = new RunBatchFile(); 
return rbf.runBatch(fileName); 
} 

答えて

8

結腸:は、変数名と正規表現との間のセパレータです。

.+は、任意の文字の少なくとも1つを意味します。

+0

こんにちは、どういう意味ですか? :) – xxxvodnikxxx

+0

こんにちは、お返事ありがとうございます、私はこれを理解しやすくするためにsomemoreコンテキストを提供したいと思います。私が呼び出さなければならないURLは 'http:// localhost:8080/runbatchfileparam/test123.bat'です。 '@RequestMapping("/runbatchfileparam/{param} ')を実行することができないので、' @RequestMapping( "/ runbatchfileparam/{param:。+}'なぜ?それはそうですか? –

+0

@SushaNaiduこれはファイル名に '.'があるため、サーバがファイルにアクセスしたいと仮定していると推測していますが、正規表現では' .'文字も許されています – Lino

1

パス変数に.がある場合に使用します。たとえば、mongoの内部フィールドをデータベースからフェッチするパス変数として渡す場合です。 (student.address.id)。デフォルトでは、最初のドットの後にエフェクトが無視されます。春のフレームワークを切り捨てないようにするには:.+が使用されます。

関連する問題