在三层体系结构中将业务类注入业务类

时间:2009-09-17 20:03:34

标签: architecture dependency-injection

我有一个三层Java应用程序,由表示层,业务层和数据访问层组成。在我的应用程序中,业务层包含我正在调用的服务类,而我的数据访问层包含我正在调用的数据访问类。我使用Spring进行依赖注入,并从业务层管理数据库事务。

我最近一直想知道将服务类注入其他服务类是否是“正常”做法。我问的原因是我有一个服务类,其中包含我想在其他服务类中使用的逻辑,我不想复制逻辑只是为了避免将服务类注入另一个服务类。我担心服务类之间的循环引用。为了避免这样做,我打算创建一个外观来包含我需要的逻辑,但我想我先问社区。

1 个答案:

答案 0 :(得分:0)

您的服务如何连接到(从表示层获取)?你是注射它们还是使用某种服务定位器模式?

我通常会将后者用于表示层和服务层,例如:需要调用service2的service1将通过服务定位器获取它。