当前位置:  开发笔记 > 编程语言 > 正文

应用程序上下文中某些bean的依赖关系形成一个循环

如何解决《应用程序上下文中某些bean的依赖关系形成一个循环》经验,为你挑选了1个好方法。

我正在使用JPA开发Spring Boot v1.4.2.RELEASE应用程序.

我定义了存储库接口和实现

ARepository

@Repository
public interface ARepository extends CrudRepository, ARepositoryCustom, JpaSpecificationExecutor {
}

ARepositoryCustom

@Repository
public interface ARepositoryCustom {
    Page findA(findAForm form, Pageable pageable);
}

ARepositoryImpl

@Repository
public class ARepositoryImpl implements ARepositoryCustom {
    @Autowired
    private ARepository aRepository;
    @Override
    public Page findA(findAForm form, Pageable pageable) {
        return aRepository.findAll(
                where(ASpecs.codeLike(form.getCode()))
                .and(ASpecs.labelLike(form.getLabel()))
                .and(ASpecs.isActive()),
                pageable);
    }
}

和服务 AServiceImpl

@Service
public class AServiceImpl implements AService {
    private ARepository aRepository;
    public AServiceImpl(ARepository aRepository) {
        super();
        this.aRepository = aRepository;
    }
    ...
}

我的应用程序不会以消息开头:

***************************
APPLICATION FAILED TO START
***************************

Description:

The dependencies of some of the beans in the application context form a cycle:

|  aRepositoryImpl
???????

我按照http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.single-repository-behaviour中描述的所有步骤进行了操作

请帮忙 !

洛朗



1> Andrei Pietr..:

对原始问题有一个简单的解决方法:只需从ARepositoryCustom和ARepositoryImpl中删除@Repository即可.保留所有命名和接口/类层次结构.一切都好.

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有