2013-04-01 64 views
1

在工作中,我看到了爲這種類型的應用程序設置目錄結構的幾種方法。也許有不止一個正確的答案。以下是我如何設置我的目錄結構 - 是否正確?或者有更好的配置方法嗎? (我在WAR文件包裝此)正確的Spring 3/JSF 2應用程序的目錄結構?

  • /webappTopDir
    • /SRC
      • /主
        • /JAVA(控制器和其它類)
        • /web應用
          • /subfolder1(Spring secured subfolder)
          • /subfolder2(彈簧擔保子文件夾)
          • /資源
            • /JS
            • /圖像
            • /CSS
          • /WEB-INF(包含應用程序的context.xml,security.xml文件,faces-config,web.xml和spring taglibs)
            • /classes(包含自定義JSF消息和日誌記錄屬性)
              • META-INF(包含的persistence.xml)
            • /lib中
            • /模板
          • /META-INF(包含的context.xml)
This結構的作品,但我仍然想確保這是最佳做法。我覺得很奇怪的是WEB-INF/classes下的META-INF,但是從我在Oracle文檔中看到的,如果將你的應用打包成WAR Oracle Managing Entites,那就是你需要的東西。

回答

0

術語「正確」意味着文件夾佈局有一個客觀的標準。以下是我所瞭解的客觀標準:

  1. 項目特定佈局。無論項目在佈局中的具體歷史如何,您都應該繼續保持這種佈局,直到您被迫離開佈局。
  2. 開發人員社區佈局。您的商店決定了佈局的實施方式。這種佈局是通過幾代程序員和正在解決的發展力量建立起來的。改變開發者社區思維模式並不是一件容易的事,即使它只是你自己。
  3. 構建工具佈局。由於工具集使用的約定,許多構建工具都有特定的佈局。 Make,Ant,Seam 2,Spring,Maven 1,Maven 3,JBoss Forge似乎都有自己的慣例,這些慣例是由創建該工具集的開發人員社區產生的。每個工具集都有自定義佈局的方法。
  4. 庫/框架佈局。 Spring有一套(一套)特定的佈局,可以很好地適用於它的構建設置。

要回答您的具體問題,我建議您使用Spring模板來構建您的目錄佈局。您可以嘗試下面的教程:

http://static.springsource.org/docs/Spring-MVC-step-by-step/

當你按照教程,學習爲什麼春天構建鏈需要的東西是在特定位置的原因。這使您可以證明教程佈局的合理性,並將類似的推理應用於您自己的應用程序佈局。

+0

有用的答案,但我的應用程序不是Spring MVC,而是Spring提供安全性的JSF。如果沒有「更好的方法」,而是結合不同目錄佈局的許多同樣好的方法,那麼這個答案就足夠了。 – MattC

1

在我的情況下,META-INF目錄位於WebContent目錄下。我認爲你覺得奇怪是對的。但絕對沒有對錯的方法。有一個更好的方法。

相關問題