2010-11-22 9 views
0

私は春には新しく、誰かが私のために何かをクリアすることができるかどうか疑問に思っていました。私が迷っているのは、spring mvc Webアプリケーションのスコープです。ユーザーはアプリケーションを使用するたびに新しいインスタンスを取得するのですか、誰もがアプリケーションの同じインスタンスを取得するシングルトンのようなものですか?アプリケーションスコープに関する概念的な質問

たとえば、ユーザー1がアクセスしたコントローラにデータを保存していて、ユーザー2が来てWebアプリケーションを使用すると、ユーザー2はユーザー1のデータを参照するか、まったく別のインスタンスですか?

私はこれに答えてみることを試みましたが運がありません。アプリケーション内のさまざまなBeanの状態については読んだことがありますが、アプリケーション自体については何も見つかりませんでした。

任意の洞察力を大幅スプリングMVCアプリケーションがシングルトンである、

HarleyQ14
+0

あなたの説明では、ユーザー2はユーザー1のデータを見ることができません。 – bakoyaro

答えて

1

を理解されたいです。すべてのユーザーが同じアプリケーションにアクセスします。そうしないとパフォーマンスとスケーラビリティが損なわれます。

「コントローラにいくつかのデータを格納しています」と言うときは、要求またはセッション関連のデータをコントローラオブジェクトのフィールドに格納することを意味しますか?もしそうならば、Springのデフォルトの振る舞いは、すべてが共有されているので問題を引き起こします。

このようなリクエストまたはセッションプライベートコントローラインスタンスを使用する場合は、scoped beansを使用することを検討してください。

+0

ありがとうございますSkaffman、これは私が探していたものでした。 –

関連する問題