4

Java ベースの構成 Web アプリを定義するときの一般的な質問です。つまり、ApplicationContext と WebApplicationInitializer クラスのクラスがあります。

xml構成ファイルが存在しないため、SpringはBeanをロードする必要があることをどのように認識しますか..Tomcatはweb.xmlなしでwebappについて何かをどのように認識しますか

その初心者の質問..私はそれを感謝します。:)

4

2 に答える 2

3

SpringSourceブログからのこのブログ投稿を参照してください。重要な部分web.xmlには例があります。基本的JavaConfigWebApplicationContextには、デフォルトの代わりにXmlWebApplicationContextを指しますDispatcherServlet<init-param>

<web-app>
    <!-- Configure ContextLoaderListener to use JavaConfigWebApplicationContext
         instead of the default XmlWebApplicationContext -->
    <context-param>
        <param-name>contextClass</param-name>
        <param-value>org.springframework.config.java.context.JavaConfigWebApplicationContext</param-value>
    </context-param>
    <!-- Configuration locations must consist of one or more comma- or space-delimited
         fully-qualified @Configuration classes -->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>example.RootApplicationConfig</param-value>
    </context-param>
    <!-- Bootstrap the root application context as usual using ContextLoaderListener -->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <!-- Declare a Spring MVC DispatcherServlet as usual -->
    <servlet>
        <servlet-name>dispatcher-servlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- Configure DispatcherServlet to use JavaConfigWebApplicationContext
             instead of the default XmlWebApplicationContext -->
        <init-param>
            <param-name>contextClass</param-name>
            <param-value>org.springframework.config.java.context.JavaConfigWebApplicationContext</param-value>
        </init-param>
        <!-- Again, config locations must consist of one or more comma- or space-delimited
             and fully-qualified @Configuration classes -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>example.web.WebBeansConfig</param-value>
        </init-param>
    </servlet>
</web-app>
于 2012-10-03T10:23:13.297 に答える
1

Maven を起動して実行している場合に、Spring MVC を学習するのに役立つ非常に良い方法があります。

もしそうなら:私が使用するコマンドライン(Cygwin)に行きます...

  1. mvn archetype:generate
  2. 「アーキタイプ番号」を求められます。あなたのために...タイプ16
  3. メイン パッケージのみであるグループ ID を入力します。
  4. プロジェクト名である Artifact ID を入力します。
  5. SNAP-SHOT --- Enter キーを押すだけで、バージョンと同じです。
  6. パッケージ - グループ ID 名と同じです。例:com.spring
  7. 文字「y」を入力して確認し、Enter キーを押します。

ワークスペース ディレクトリに移動した後、上記のすべてを実行します。そのようにそれはそこに作成されます。
「mvn eclipse:eclipse」を実行してEclipseにロードするか、インポートするだけです。私は既存のプロジェクトをインポートする昔ながらの方法を好みます。

すべての構成 (Java ベース) に関しては、すべてが「既に」セットアップされているため、適切です。必要なすべての Maven 依存関係が既に pom.xml に含まれています。必要に応じて追加または取得できます。

ここでのポイントは、すでに実行中のプロジェクトがあり、そこからそれを試すことができるということです。私は最初にすべてのプロジェクトをこのように作成し、必要のないものを削除し、必要なものを追加して、そこから始めます。

幸運を!!!

Anywho... これを web.xml に追加します。これはあなたの答えに役立ちます。以下でこれを調べてください:

<context-param>
    <param-name>contextClass</param-name>
    <param-value>
        org.springframework.web.context.support.AnnotationConfigWebApplicationContext
    </param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
于 2014-11-02T21:36:48.530 に答える