3

ここに画像の説明を入力現在のプロジェクト構造

私の最初の春の mvc プロジェクトでは、このプロジェクトのディレクトリ構造と、そのように行われる理由をよりよく理解しようとしています。

「コントローラー」と「ビュー」ディレクトリに何が入っているかはわかりますが、他のディレクトリについてはわかりません。Bean とコマンドの .java ファイルを見ると、それらは同じように見えます。2 つの間の注釈に違いはないのに、なぜ 2 つのディレクトリを 1 つに結合できないのでしょうか?

サービスには何が含まれますか?

マッパーは、OR/M オブジェクトのデータベースとのマッピング用のようです

リゾルバーのディレクトリがわからない

これは、Spring MVC プロジェクトを編成する標準的な方法ですか?

4

2 に答える 2

3

すべてのプロジェクトには、組織/ユーザーのスタイルに応じた構造があります。構造は、組織によって設定された基準を順守します。そのため、それらはそれぞれ異なります。MVC プロジェクトは、大きく次のように分類できます。

  1. コントローラー
  2. サービス //ビジネス ロジック層。コントローラーとdaoの間のレイヤー
  3. dao // DB と通信する
  4. command または bo または vo (好きな名前で構いません)

以上が主な3つです。次に、次のような他のフォルダーがある可能性があります

  1. utils //コンバーター、バリデーターなどは、ここまたは独自のパッケージに入れることができます
  2. リソース // .properties、xml などをここに配置します

春のコンテキストでは、継承元の注釈でマークされたクラスはすべて@ComponentBean であるため、質問で言及した構造はそれを念頭に置いて作成された可能性がありますが、正しく使用されていません。

リゾルバー フォルダーは、View リゾルバーをホストする場合があります。これもまた、ただの推測です。完全にあなた次第です。

Maven の spring archetype と、それが spring プロジェクトを編成する方法を調べて、Spring の作成者がプロジェクトを編成する方法を理解することができます。

于 2012-11-16T15:06:54.760 に答える
3

Spring-Hibernate プロジェクトは、組織の基準に従ってさまざまなプロジェクト構造に従います。Spring MVC プロジェクトは、次のように大別できます。

   -Java リソース
        |_src
           |-com.organization.controllers // すべてのコントローラー
                     |_ ユーザーコントローラー
                     |_ AbcController
                     |_ -------------
                     |_ XyzController

           |-com.organization.services // サービス層またはビジネス層
                     |_ AbcService
                     |_ AbcServiceImpl

           |-com.organization.dao // データ アクセス層
                     |_ AbcDao
                     |_ AbcDaoImpl

           |-com.organization.bo // POJO またはビジネス オブジェクト層
                     |_ ユーザー
                     |_ Abc

           |-resoures // すべてのリソース

           |-util // ユーティリティ

   -Webコンテンツ
           |-リソース
                    |_css
                    |_js
                    |_画像
           |-WEB-INF
                    |_lib
                    |_ビュー
                          |_ .jsp
                    |_.xml

           |-index.jsp

于 2014-01-14T05:50:27.400 に答える