2012-01-11 21 views
-1

私はSpring 3.1.0 MVCベースのアプリケーションを作成しています。問題は:私はシングルトンオブジェクト(現在のHttpServletRequestHttpSevletResponse)にいくつかのオブジェクトを入れて、それらを他のオブジェクト(Spring Controllers)で使用したいと思っています。しかし、そうすることはできませんでした。 DispatcherServletを拡張して、doServicedoDispatchの両方を上書きしようとしました。また、独自のHandlerInterceptorを実装しようとしました。検索結果はありません。Spring Framework 3でシングルトンを初期化するMVC

シングルトンオブジェクトはどこで初期化できますか? Spring Frameworkのエントリーポイントと破壊ポイントはどこにありますか(つまり、init()destroy()のメソッドやライフサイクルのようなもの)?

+0

ええ、たくさんの質問です。私はあなたがドキュメントを読む必要があると思います。 – skaffman

答えて

1

HttpServletRequestHttpServletResponseがあなたのコントローラメソッドにメソッドの引数として使用できます現在:

@RequestMapping("/foo") 
public String foo(HttpServletRequest request) { 

} 

私はあなたがあなたのコントローラでも@Injectそれができると信じています。プロキシが挿入され、それらを参照するたびに現在のプロキシが使用されます。 (私はこのことについて100%確信していません)

第3の選択肢は、RequestContextHolderコンテナを使用してそこからすべてを取得することです。

+0

はい。私はこれらの方法を知っています。ありがとう。しかし、私はFacadeパターンを実装しています。つまり、Springフレームワークからのみアクセスできるすべてのデータにアクセスするには、1つのオブジェクト(例:春のメッセージ、ロケールの取得など)を入れます。だから私はそれらをシングルトンに入れたいのです。あなたはシングルトンの初期化を達成する方法を知っていますか? – J3DI

+0

コントローラもシングルトンです。私は正確にあなたが達成したいと思っているものを理解していません。 – Bozho

+0

シングルトンを初期化するので、コントローラでアクセスすることができます。 – J3DI

関連する問題