2011-12-10 9 views
0

dispatcher-servlet.xmlを使用してspring-ormプログラムを実行することは可能ですか? ContextLoaderListenerapplicationcontext.xmlを使用しない場合は、はいの場合はどうですか?私のspringプログラムは、dispatcher-servlet.xmlを使って、ContextLoaderListenerとapplicationcontext.xmlを使わずに実行できますか?

dispatcher-servlet.xmlまたはapplicationcontext.xmlweb.xmlに登録する必要があるのはなぜですか?これらのファイルがweb.xmlに登録されていない場合、サーバー起動時にすべてのセッター注入(dispatcher-servlet.xmlまたはapplicationcontext.xmlで指定)が実行されるため、これらのxmlファイルはweb.xmlに登録せずにロードされます。

+0

dispatcher-servlet.xmlは、ディスパッチャサーブレットのコンテキストをコンフィグレーションします。 Springの詳細を読む必要があると思います。xmlファイルはweb.xmlに「登録」されていないので、Springのコンテキストローダーのパラメタです。コンテキストを作成しない場合は、どのようにしてdispatcher-servlet.xmlを使用しますか? – Paul

答えて

1

spring-ormプログラムは、dispatcher-servlet.xmlのみを使用して実行できますか。 ContextLoaderListenerとapplicationcontext.xmlを使用しない場合

はい、問題ありません。

はいの場合はどうですか?

あなただけです。必要なものすべてをdispatcher-servlet.xmlに入れると、それだけで動作します。 DAO関連のものをapplicationContext.xmlに入れ、MVCのものをdispatcher-servlet.xmlに入れるのは一般的な習慣ですが、これは決して必要条件ではありません。あなたが選ぶならば、それはすべて1つのファイルに座ることができます。

第2に、web.xmlにdispatcher-servlet.xmlまたはapplicationcontext.xmlを登録する必要があるのはなぜですか?これらのファイルがweb.xmlに登録されていない場合、(dispatcher-servlet.xmlまたはapplicationcontext.xmlで指定された)すべてのセッターインジェクションはサーバーの起動時に発生するため、これらのxmlファイルはweb.xmlに登録せずにロードされます。

web.xmlに指定しないと、デフォルトの値が使用され、とにかく検索されるためです。 DispatcherServlet<servlet-name>-servlet.xmlを探し、ContextLoaderListenerはデフォルトで/WEB-INF/applicationContext.xmlを探します。選択した場合、これをweb.xmlに上書きすることができます。

関連する問題