webプロファイルとSpring詳細
もっと読む
web.xmlでcontentConfigLocationパラメータを定義します.Springはこのパラメータを使ってカンマ区切りのファイルを全部ロードします.xmlファイル、Springは標準的にweb-INFの下のaplication Controtext.xmlファイルをロードします.
SpingでServletContentListenerを提供する1つの実装クラスのcontent Loader Listenerは、Listenerとして使用することができます.読み込むプロファイルが1つだけで、appication Content.xmlという名前の場合は、ファイルに以下のコードを入れるだけでいいです.
複数のプロファイルがあります.以下のように構成されています.
注意:contentLoader Listenerクラスを使用して、プロファイルのロードはServlet 2.4および以上の仕様Servlet容器に適用されます.
contentLoader Servletクラスに基づいてSpringプロファイルのロードを実現することは、servlet 2.3以下の仕様のservlet容器に適用できる.
servlet容器の起動時にコンポーネントをロードする順序から見て、ListenerコンポーネントはServletコンポーネントより優先されます.Servlet方式に基づくローディングスキームは、主にServlet 2.3および以下の仕様に対応するServlet容器のためである.Tomcatを例にとると、Tomcat 5.xはすでにServlet 2.4仕様をサポートしているので、Listener方式に基づいてSpring容器を起動するのが主流です.
web.xmlでcontentConfigLocationパラメータを定義します.Springはこのパラメータを使ってカンマ区切りのファイルを全部ロードします.xmlファイル、Springは標準的にweb-INFの下のaplication Controtext.xmlファイルをロードします.
contentConfigLocation
classpath*:config/applicationContext.xml,classpath*:config/applicationContext-shiro.xml
contencConfigLocationパラメータはSpringにロードするプロファイルを定義しています.ロードの原理は以下の通りです.SpingでServletContentListenerを提供する1つの実装クラスのcontent Loader Listenerは、Listenerとして使用することができます.読み込むプロファイルが1つだけで、appication Content.xmlという名前の場合は、ファイルに以下のコードを入れるだけでいいです.
org.springframework.web.context.ContextLoaderListener
読み込むプロファイルが複数ある場合は、確定ファイル名を使用する必要がありますが、content LoaderListenerが読み込む際に、content ConfigLocationというパラメータを検索しますので、定義された名前の場合はcontent ConfigLocationを使用します.複数のプロファイルがあります.以下のように構成されています.
contextConfigLocation
classpath*:config/applicationContext.xml,classpath*:config/applicationContext-shiro.xml
webAppRootKey
EPMAS.webapp.root
log4jConfigLocation
/WEB-INF/log4j.properties
org.springframework.web.util.Log4jConfigListener
org.springframework.web.context.ContextLoaderListener
contentConfigLocationパラメータで指定されたプロファイルがないと、Springは自動的にaplication Contront.xmlプロファイルを検索します.contentConfigLocationパラメータで指定されたプロファイルが設定されている場合、このパラメータは文字列を指定し、Springのcontent LoaderListenerはこの文字列を複数の構成ファイル、カンマ、スペースに分解し、セパレータとして使用することができます.contentConfigLocationパラメータが設定ファイルに指定されていなくても、appliation Contront.xmlという名前のプロファイルがないと、Springが設定ファイルをロードできなくなり、またはappication Controntrontを作成するという例が異常になります.注意:contentLoader Listenerクラスを使用して、プロファイルのロードはServlet 2.4および以上の仕様Servlet容器に適用されます.
contentLoader Servletクラスに基づいてSpringプロファイルのロードを実現することは、servlet 2.3以下の仕様のservlet容器に適用できる.
contextConfigLocation
classpath*:config/applicationContext*.xml
context
org.springframework.web.context.ContextLoaderServlet
1
Springは特殊なServlletクラスを提供しています.このServletは起動時に、WEB-INFの下のappration Comptext.xmlファイルを自動的に検索します.もちろん、Contect Loader Servletをアプリケーションに従って起動させるために、このServletをload-on-startupのServleto load-on-startupの値より小さいのが適当です.Application Contectが優先的に作成されることを保証するためです. servlet容器の起動時にコンポーネントをロードする順序から見て、ListenerコンポーネントはServletコンポーネントより優先されます.Servlet方式に基づくローディングスキームは、主にServlet 2.3および以下の仕様に対応するServlet容器のためである.Tomcatを例にとると、Tomcat 5.xはすでにServlet 2.4仕様をサポートしているので、Listener方式に基づいてSpring容器を起動するのが主流です.