2016-05-10 11 views
0

私は従来のSpring MVCの使いやすいアプリケーションを使用していますが、法的な理由から簡単にはアップグレードできませんが、初期化変数を設定する方法はありません。これらは静的な設定であり、web.xml内で設定できないプロパティです(たとえば、サーブレットのコンテキスト変数を使用している可能性があります)。Spring 3.1への従来のアプローチMVCの快適な初期化

Spring 4.xとServlet仕様3を使用していた場合は、 'WebApplicationInitializer'クラスを使用できますが、Spring 3.xとServlet Spec 2.5では使用できません。 J2EE仕様3も使用していません。 Webアプリケーションを初期化するために使用できるクラスまたはアプローチは何か。私は純粋な静的変数を使うのを避けようとしていました。

目標は、Spring Beanがロードされる前に変数を設定することです。

答えて

0

いくつかの静的初期化値を初期化してプロパティファイルに入れ、それをロードしてBeanで使用して設定することができれば、withsの@PostCostrunctメソッドを使用することもできます変数を初期化してから使用することができます。

大文字と小文字は非常に単純ですが、次の解決策としてはそれを行うことができます。あなたは春> 3.1を使用する場合

class Config{ 

    private Map prop; 


@PostCostruct 
public void init() { 
    prop = load properties from file and put in the map; 
} 


// getter of prop 
} 

は、しかし、私の個人的なアドバイスは単にあなたがご使用の構成に的環境クラスのistanceと利用システム的環境変数を@Autoviewdことができ、私はこの最後のアイデアと考え的環境の抽象化を使用しましたアプリケーションにとって最も安全です。

私はこれがあなたを助けることを願っています

関連する問題