2017-06-04 7 views
1

に春コントローラ2つのWebサービスで同じのArrayListを使用するので、私は豆共有arraylsit春コントローラ

​​

}を作成しようとしたリクエストまたはセッションスコープを使用してDBから一度それを取得したいです

コントローラ

のApplicationContext CTX =新しいAnnotationConfigApplicationContext(exampleBeanの.class)において、 出席者の出席者attendeeBean = ctx.getBean(exampleBean .class);

最初のサービスではリストを設定しましたが、2番目のサービスでは見つかりませんでした。

+0

スコープを 'request'に設定しておけば、スコープを指定しないでください。シングルトンとみなされ、アプリケーション内のすべてのリクエストを通して利用可能になります。 –

+0

また、このリストを静的にしたくない場合は、セッションとして 'scope'を作成する必要があります。 –

+0

私はそれをセッションスコープに変更しようとしましたが、@AmitKありがとう –

答えて

0

問題を働いたあなたがrequest範囲、値またはBeanが単一の要求で利用できるようになりますし、他の要求のために使用することはできません定義scope、とありました。詳細はspring scopesをお読みください。

したがって、スコープをsessionに変更すると、1つのリクエストで作成されたすべてのBean /オブジェクトは、同じセッション内の他のすべてのリクエストで使用できるようになります。したがって、範囲をsessionに変更すると問題が解決しました。

0

私はちょうど@AmtiKのアドバイスや、いくつかの検索とを使用して @Scope(値= "セッション"、proxyMode = ScopedProxyMode.INTERFACES)

に@Scope(値= "要求")に変更。

そして、それは

関連する問題