0

Spring Bean とそれらの間の依存関係として構造化されたコードがあります。残りは「レガシー」コードであるため、これはコードのほんの一部です。

この時点で、拡張する既存の「レガシー」クラスでこれらの Bean の 1 つに対してアクションを実行したいと思いますjavax.servlet.ServletContextListener。このクラスはアプリケーションを初期化し、そのコードは一度だけ呼び出されます。

私の最善の行動方針は何ですか?

ありがとう!

4

2 に答える 2

4

SpringContextは次の方法で取得できます。

WebApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContextEvent.getSevletContext())

次に、ctx.getBean( "name");を呼び出すことができます。(およびその他-WebApplicationContextのjavadocとその親を確認してください)

于 2009-11-11T16:07:22.700 に答える
3

ServletContextListenerBean はサーブレット コンテキストをリッスンしないため、Spring Bean を拡張しても意味がありません。アプリケーションとともに初期化および破棄される Bean を使用する場合、Spring でこれを行う方法は多数あります。ドキュメントのこの部分を参照してください。

于 2009-11-11T13:20:32.317 に答える