正确的Spring 3 / JSF 2应用程序目录结构



在工作中,我已经看到了为这类应用程序设置目录结构的几种方法。也许正确答案不止一个。这是我如何设置我的目录结构-它是正确的吗?或者有更好的配置方式吗?(我将其打包在WAR文件中)

  • /webappTopDir
    • /src
      • /主要
        • /java(控制器和其他类)
        • /webapp
          • /subfolder1 (Spring安全子文件夹)
          • /subfolder2 (Spring安全子文件夹)
          • /资源
            • /js
            • <
            • /图像/gh><
            • /css/gh>
          • /WEB-INF(包含application-context.xml、security.xml、faces-config、web.xml和spring标签库)
            • /classes(包含自定义JSF消息和日志属性)
              • META-INF(包含persistence.xml)
            • /lib
            • <
            • /模板/gh>
          • /META-INF (contains context.xml)
这种结构是有效的,但我仍然希望确保它是最佳实践。我发现真正奇怪的是WEB-INF/classes下的META-INF,但从我在Oracle文档中看到的,如果将应用程序打包到WAR Oracle管理实体中,这就是你需要的。

在我的例子中,META-INF目录在WebContent目录下。我觉得你觉得奇怪的是对的。但绝对没有对错之分。肯定有更好的办法

术语"正确"意味着文件夹布局有一个客观的标准。以下是我所知道的客观标准:

  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/

在学习本教程时,了解Spring构建链为什么需要将东西放在特定位置的原因。这允许您调整教程布局,并将类似的推理应用于您自己的应用程序布局。

相关内容

  • 没有找到相关文章

最新更新