【问题标题】:Web App packages structure for a big web project [closed]大型网络项目的网络应用程序包结构[关闭]
【发布时间】:2017-02-09 15:50:02
【问题描述】:

我正在使用 servlet 和 JSP 创建一个应用程序。我想知道如何将模块安排为应用程序中的包。即:我想要testproject.web 中的servlet,testproject.modelstestproject.dataaccess 中的模型等等。

我可以创建不同的包并将我的源代码安排在相关包中吗?

我想知道执行此操作的最佳做​​法。我假设所有源代码都可以在 Eclipse 中的单个动态 Web 项目中创建。

我基本上是一个 .NET 程序员,我们可以在一个解决方案中创建不同的项目。

【问题讨论】:

  • Java 有一个package 概念,是的。这就是你要问的全部吗?
  • 是的。如果有任何建议,我想获得更多建议

标签: java jsp servlets packages


【解决方案1】:

当然,您可以使用package 声明,但您也可以使用 Maven / Gradle 创建多模块项目。它们还充当您的依赖管理工具,例如 .NET 中的 NuGet。

我拥有的 Java Web 项目中的一个示例 pom.xml 部分。

依赖关系是自下而上设置的,从最依赖到最少。 (这是由其他 pom.xml 文件设置的)

  <modules>
    <module>core</module>
    <module>service-templating-core</module>
    <module>service-templating-velocity</module>
    <module>service-rest-jersey</module>
    <module>service-rest-sparkjava</module>
    <module>web</module>
  </modules>

模块在哪里

  • core:基本 Java 对象几乎没有依赖关系
  • web: 站点的“入口点”并持有静态资源
  • service-rest-*:处理 REST API 路由(实现 JAX-RS 或 SparkJava)
  • service-templating-*:处理 HTML 模板(已实现的 Velocity 模板)
  • service-templating-core:处理将 Java 对象绑定到抽象 ViewTemplate

在 Eclipse 中,这些“看起来”像是独立的项目,但实际上它只是一个 Maven 项目。


您仍然可以在每个项目中拥有包。仍然是 Java


我没有在生产中使用它,主要是为了在框架之间快速切换来学习它们。
例如,如果需要,您可以轻松地向其中添加 db-mysqldb-mongo 模块。

【讨论】:

    【解决方案2】:

    Java 有package 概念,您可以将代码安排在不同的包中 如 创建不同的包并在相关包中安排源代码

    示例示例

     ui
     presentation
     business
     dataacess
     utils
     library
    

    您可以根据您的架构或基于应用程序中的层或层创建不同的packages

    注意:-以上只是示例,您可以根据您的应用程序实现来安排包。

    【讨论】:

    • 为什么否定需要解释,会有帮助的
    • 好的。我希望像 testproject.ui、testproject.business 等那样做没有问题...
    猜你喜欢
    • 2012-10-04
    • 1970-01-01
    • 2014-02-25
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 2017-03-05
    • 1970-01-01
    • 2012-07-19
    相关资源
    最近更新 更多