【发布时间】:2016-09-29 09:00:40
【问题描述】:
我试图通过Repository 的例子来理解六边形架构。
在这个设置中,我有以下几层:框架(基础设施)-> 应用程序-> 域。
我在域部分有User,假设我想通过DuplicateUsernameValidator 验证User,如果没有任何重复。为了获得这些信息,我需要从某个地方获得这些信息。我在领域层又增加了一个接口UserRepository,这样就可以在上面的层解决了。
这对我来说是棘手的部分。我想实现UserRepository的逻辑,但对我来说在应用层实现这个没有意义,因为持久化上下文在基础设施层(例如JdbcUserRepository或JpaUserRepository)。
但是如果我正确理解了六边形结构,我就不能直接在我的基础设施层中实现UserRepository 接口,因为基础设施层不应该知道域层。
我错过了什么?
【问题讨论】: