我有一个 Service 类,注入 RepoService。 在 RepoServiceImpl 类中,注入 Mapper。
在Mapper类中,注入RepoService,因为我必须再次使用repoService来获取记录。
Reposervice是一个接口,在RepoServiceImpl中实现。
class Service {
@Autowired
@Qualifier("repoService")
private RepoService repoService;
public void create() {
repoService.createRecord();
}
}
@Service
@Qualifier("repoService")
class RepoServiceImpl implements RepoService {
@Autowired
private mapper;
createRecord(){
mapper.createMapper();
}
getRecord(){
}
}
@Component
class Mapper {
@Autowired
@Qualifier("repoService")
private RepoService repoService;
createMapper(){
repoService.getRecord();
}
}
需要检查设计流程,是否需要更改设计?
每一层都有特定的含义。
控制器 - 管理业务逻辑的其余接口
服务-业务逻辑实现
存储库 - 与数据库连接以及从数据库存储/检索实体。
所以根据你的设计- 存储库层应该只包含与数据库相关的操作。 服务层应包含存储库服务和映射器。 将数据库实体转换为 DTO 是业务逻辑的一部分。