UserRepository可以调用User领域内的DAO,也可以调用CrossCutting Layer的方法,并不针对某一个具体的数据表。
PassportService就是传说中的领域服务,负责调用UserRepository,BBSUserRepository等,并对UI层提供API接口。
这是完整的调用路径:
UI
↓
PassportService
↓ ↓
UserRepository BBSUserRepository
↓ ↓
UserDAO UserAccountDAO
如果有不涉及数据库的业务计算,比如更新缓存、计算积分等,可以由UserRepository调用相关的BO处理。