RequestMappingでEnum値を使用する方法はありますか?文字列リテラルではなく@RequestMappingの値を使用できますか?
@RequestMapping(value = "/example",
method = RequestMethod.POST)
public final void foo(final HttpServletResponse response,
すでにEnumに格納されているURL値を使用します。
しかし、RequestMapping
に文字列リテラル以外のものを入れようとすると、コンパイル時エラーが発生します。
文字列リテラルと文字列リテラルではない文字列の違いをどのように知っていますか?
これは私が試したものですが、それはコンパイル時に失敗しました:
@RequestMapping(value = FooEnum.Example.getStringValue(),
method = RequestMethod.POST)
public final void foo(final HttpServletResponse response,
私もString.format
を使用してみましたが、それはそのどちらか好きではない:
@RequestMapping(value = String.format("%s", FooEnum.Example.getStringValue()),
method = RequestMethod.POST)
public final void foo(final HttpServletResponse response,
定数ではなく、 '' PO "+" ST "'などの式であっても定数(コンパイル時)の値ではなく、*のみ*ではありません。これは、 'RequestMethod.POST'がアノテーション内の有効な属性値であるが、メソッド呼び出しがそうでない理由です。 –