3

私のWebアプリケーションには、現在ログインしているアカウントを(セッションから)取得する必要がある場所がたくさんあります。

Account account = getAccountFromSession(session);

このコードは何度も繰り返されます。これが私のリクエストを次のようにすることが可能かどうか疑問に思います:

@RequestMapping(value="/something", method=RequestMethod.POST)
public String handleSomething(
        @RequestParam String someParam,
        @Account Account account) { ... }

@Account はカスタム アノテーションです。

この注釈を処理するように春に指示するにはどうすればよいですか?

4

1 に答える 1

4

を使用しますHandlerMethodArgumentResolver(またはWebArgumentResolver3.1 未満のバージョンの場合)。

引数リゾルバーを有効にするには:

  • 使用する場合@EnableWebMvc-@Configuration実装WebMvcConfigurerしてオーバーライドするaddArgumentResolvers()
  • 使用する場合<mvc:annotation-driven>- 使用argument-resolvers属性
  • AnnotationMethodHandlerAdapter古いバージョンでは、手動で宣言して設定する必要がある場合がありますcustomArgumentResolvers
于 2013-06-19T20:39:53.137 に答える