6

parent-api-impl 项目结构对我来说有点新鲜。我们的 Java maven 项目结构是这样的:

> com.sample.myproject
> com.sample.myproject.api    
> com.sample.myproject.impl

我的问题是:

  1. 如何在 Eclipse 中创建这样的项目以使它们相互连接?

  2. 这种结构何时可取?

  3. 有没有我可以参考的网站或参考资料来讨论这种结构?也许是教程或指南?

4

2 回答 2

2

我认为以相反的顺序回答您的问题可能更有意义...

既然你有一个 API,那么外观数据模式可能是一个很好的起点。这种模式的目的本质上是提供一个外部用户可以连接到的接口。

当您想要公开一系列函数(API)时,通常需要这种类型的结构,而无需透露您在实现此类函数时的实际情况。因此,例如,您只是public BigDecimal calculateTax(BigDecimal amount, double percentage)向您的用户公开 a,而没有展示您是如何进行和实现您的方法的。

最后,我会这样做:

  • com.sample.myproject将是我的核心项目,我将在其中放置任何核心功能,例如对象的持久性。

  • com.sample.myproject.api本质上将是一个项目,其中包含Interfaces我想公开的其他内容。

  • com.sample.myproject.impl将通过使用核心项目和一些额外的逻辑来实现上面的两个项目,以公开可用的 API 层。

于 2013-10-14T06:12:02.140 回答
1

1)在eclipse中创建3个项目并为每个项目创建一个pom.xml文件用于maven管理。在此之后,您应该:

  • 父依赖 api
  • impl 依赖于 parent 和 api

这样,eclipse m2eclipse 插件会将项目相互连接起来。

2) 仅当您需要更改已定义 api 的整个实现时,才建议使用此项目结构。它允许您轻松地将另一个具有另一个实现的 jar 放置到应用程序中,而无需修改任何 java 代码。当然,它仅适用于仅通过而不是实现来引用 api 的情况。它可以通过 EJB 或 Spring 来完成。

3)我想不出任何教程或网站,对不起。

于 2013-10-14T06:10:57.057 回答