2012-05-13 10 views
1

私はSpring Beanを使用するアプリケーションを作成しており、ApplicationContextxmlから初期化する必要があります。それはサーバーアプリケーションではないので、WEB-INFフォルダがありません。私はxmlファイルを置くべきですか?Spring applicationContext.xml

答えて

1

チェックこの例Spring Setter Injection

XMLは、アプリケーションのクラスパスにある場合は、XMLは、ファイルシステムにある場合、それ以外の場合は、その後

 ApplicationContext context = new FileSystemXmlApplicationContext("beans.xml"); 
3

春を使用して、この

ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); 

のように使用しますこのトピックのドキュメントは、最初はやや圧倒的です。アプリケーションコンテキスト設定の春のドキュメントに便利な出発点は、here

file system xml application contextがおそらく最も簡単です。だから、:あなたはあなたのアプリケーションのクラスパスにxml設定を持っている場合

ApplicationContext appCtx = 
    new FileSystemXmlApplicationContext("/path/to/springconfig.xml"); 

ClassPathApplicationContextを使用してください。この例では、プロジェクトディレクトリsrc/config/springconfig.xmlの下にspringconfig.xmlがあります。

ApplicationContext appCtx = 
    new ClassPathXmlApplicationContext("config/springconfig.xml"); 

、あなたのアプリケーションを構築した後、あなたのspringconfig.xmlが終わる場所がわからない場合、あなたはあなたのjarファイルの内容をリストするには、次のコマンドを使用することができます。デフォルトのEclipse用

jar -tvf myapp.jar 

javaプロジェクトの場合、プロジェクトホーム/ binディレクトリがクラスパスの先頭です。

関連する質問は使用ClassPathXmlApplicationContexthere

+0

私は同じことをして、srcディレクトリにアプリケーションコンテキストxmlを入れました。それは動作しません。私はEclipse RCPアプリケーションに取り組んでいます。 – itun

+0

いくつかのクラスパスのデバッグアイデアを含むように更新されました。私はsrc/config/springconfig.xmlを使ってEclipseでこれをテストしてくれました。 – pd40

3

を頼まれた:

ApplicationContext ctx = 
    new ClassPathXmlApplicationContext("applicationContext.xml"); 

それとも@Configurationへの移行を検討:

AppConfig@Configurationでアノテートされており、何のXMLは必要ありません
ApplicationContext ctx = 
    new AnnotationConfigApplicationContext(AppConfig.class); 

+0

私は同じことをして、srcディレクトリにアプリケーションコンテキストxmlを入れました。動作しません – itun

+0

@itun:「*動作しません」と記述してください。 [tag:maven]を使用している場合、 'applicationContext.xml'は' src/main/resources'になければなりません。そうでない場合 - CLASSPATHのルートディレクトリのどこかにあります。 –

+0

私はEclipse RCPアプリケーションで作業しています – itun

関連する問題